Q
在X根窗口上繪圖
9
A
回答
8
0
use X11::Protocol;
my $x = X11::Protocol->new();
my $desktop;
my ($root,undef,@kids)=$x->QueryTree($x->{'root'});
printf "%10x:\tRoot\n", $root;
foreach (@kids){
my $gdkw = Gtk2::Gdk::Window->foreign_new($_);
printf ("%10x:\tDesktop\n",$gdkw->get_xid),$desktop=$gdkw,last if $gdkw->get_type_hint eq 'desktop';
}
$desktop=Gtk2::Gdk::Window->foreign_new($root) if ! $desktop;
#------------------------------------------
我可以找到桌面,通過xwininfo驗證。 但是,我失去了可以繪製桌面的代碼,似乎使用了「set_back_pixmap」。
現在開羅可以在任何Windows畫得很簡單,只需使用
$cr = Gtk2::Gdk::Cairo::Context->create ($drawable);
但是,這並不在桌面上工作。 也許是由於內核更新?或者我現在在Ubuntu 10.04-3上搞砸了。
相關問題
- 1. 獲取圖像在窗口上繪製
- 2. 如何在窗口上繪製圖像?
- 3. 在放大Matplotlib繪圖窗口時,繪圖圖例不在窗口中
- 4. 窗口上的運行時繪圖
- 5. Android - 在地圖上繪製Android地圖上的彈出窗口
- 6. 在窗口上繪製位圖並將其更新爲每秒'x'次
- 7. 用PyCairo直接繪製到根窗口
- 8. 繪圖窗口中的JFrame
- 9. 在窗口上繪製文本
- 10. C#。 WINAPI。在窗口上繪製
- 11. 繪圖窗口沒有出現在matplotlib
- 12. 在C++窗口中繪製圖形
- 13. RStudio - 在多個窗口中的繪圖
- 14. 在OS X上更改窗口焦點
- 15. 在MFC中使用GFL SDK在窗口上繪製圖像
- 16. 直接在所有窗口上繪圖直接屏幕
- 17. 在另一個窗口上繪圖(沒有閃爍?)
- 18. 使用筆在透明窗口上繪圖
- 19. 凍結在繪圖形狀上的窗口
- 20. 在窗口/控制檯上顯示繪圖Ruby + Cairo
- 21. Objective-C在單獨的窗口上繪圖
- 22. 在Mac OS X的桌面上繪圖
- 23. 使matplotlib繪圖窗口作爲活動窗口彈出
- 24. 如何設置繪圖窗口的窗口大小?
- 25. 「WindowListener」`;窗口右上方的X無助於關閉窗口
- 26. 如何在RStudio的內部繪圖窗口中繪製plot3d
- 27. 在同一個窗口中繪製一個或多個繪圖
- 28. C++重繪窗口
- 29. 在根窗口的背景中顯示顏色X Window Pixmap
- 30. 選擇X窗口
謝謝你,你的回答是最有幫助的。 我想繪製除文字以外的東西,但這是一個很好的起點。 – x10 2009-12-19 23:36:42
以下是一些示例代碼: http://pastebin.com/f58970b0c 並且教程: http://ldots.org/xosd-guide/using_libxosd.html – x10 2009-12-19 23:41:16