2009-10-19 75 views
2

我正在使用「gtkmm」製作GUI程序。 我想繪製一些圖形到「Gtk :: DrawingArea」小部件,但我希望這個小部件是「可調整大小」,所以當我畫我們說一行從「(0,0)」到「(50,50 )「像素 - 繪圖區域應調整大小的平方」(50,50)「;當我例如從「(0,0)」中畫一條線來讓我們說「(100,70)」像素時 - 繪圖區域應該調整大小爲一個大小爲「(100,70)」的矩形。Gtkmm - 「Gtk :: ScrolledWindow」中的「Gtk :: DrawingArea」?

要做到這一點 - 我把「Gtk :: DrawingArea」小部件放到「Gtk :: ScrolledWindow」容器中。因此,當我將大小爲「(100,100)」的圖片放入繪圖區域時 - >我將調用適當的成員函數「Gtk :: DrawingArea :: set ___ size_request(100,100)」,它將設置繪圖區域的大小爲(100,100)像素。因此,如果「Gtk :: ScrolledWindow」比它內部的「Gtk :: DrawingArea」更小,那麼滾動的窗口應該變成「可滾動」 - 但問題是,它不起作用!!!!!

所以有人可以解釋我該怎麼做?

謝謝。

回答

3

在你的ScrolledWindow和DrawingArea之間添加一個GTK :: Viewport。

+0

這通常不需要手動添加一個GTK ::視口gtkmm的。如果是,那麼請有人提交測試用例的錯誤。 – murrayc 2013-09-12 07:34:29

1

如果有人仍然在尋找一個答案,是有辦法做到這一點不基於GTK ::視窗,通過使用該功能

Gtk::DrawingArea::set_size_request(width,height); 
相關問題