2014-03-13 117 views
1

我正在使用PyGi Gtk3和它Gtk.Window增加了一個惱人的邊框部件和主窗口:如何刪除Gtk Widgets和Window周圍的邊框?

Gtk.Window border example

邊框是兩個圖像之間和外面這個灰色邊框窗戶。任何人都知道如何徹底刪除它?所以這兩個圖像可以無縫連接在一起。

這是我的代碼:

#!/usr/bin/python3 
#encoding:utf-8 


from gi.repository import Gtk, Gdk 


class TestMainWindow(Gtk.Window): 

    def __init__(self): 
     Gtk.Window.__init__(self, title="Test Window") 
     self.set_resizable(False) 

     self.box = Gtk.Box(orientation='vertical') 
     self.add(self.box) 

     self.album_cover = Gtk.Image() 
     self.album_cover.set_from_file('../reference/album-cover.jpg') 
     self.box.pack_start(self.album_cover, True, True, 0) 

     self.album_cover2 = Gtk.Image() 
     self.album_cover2.set_from_file('../reference/album-cover.jpg') 
     self.box.pack_end(self.album_cover2, True, True, 0) 


def main(): 
    win = TestMainWindow() 
    win.connect('delete-event', Gtk.main_quit) 
    win.show_all() 
    Gtk.main() 


if __name__ == '__main__': 
    main() 

回答

0

在設定從GtkWidget的繼承爲FALSE「頁邊距」屬性給一試。在C中,這是使用g_object_set完成的。

+0

嗨,你能解釋一下這一點嗎?我已經嘗試在窗口中使用'self.set_border_width(0)'而沒有任何效果。這是相同還是不同? – Lars

+0

我剛剛測試過你的代碼,實際上我沒有使用與你使用的代碼相同的灰色區域。因此,無論是使用某種調整過的主題,還是更可能屬於圖片的灰色區域。順便說一句,不,set_border_width與邊際屬性無關。 「margin」是一個GtkWidget屬性。您可以使用self.album_cover.set_property(「margin」,0)'設置它的值,但默認值已經爲0,所以我認爲它不會改變任何內容。閱讀http://python-gtk-3-tutorial.readthedocs.org/en/latest/objects.html#properties以瞭解如何操作屬性。 – liberforce

+0

我正在使用Awesome WM。在真棒我有灰色地帶,但後來,我已經在基本的操作系統環境中嘗試過,灰色地帶消失。真棒不使用窗口組成,所以我已經丟棄它。還剩下什麼?這與主題有關嗎?因爲我的應用沒有此邊框,所以可能有辦法將其禁用。 非常感謝你的幫助。 – Lars

相關問題