2013-07-29 85 views
6

我想在我的用戶界面上添加一個「打開文件」文件選項卡。工作正常,但---------行顯示在選項卡的頂部,我想將其刪除。我不知道爲什麼這行顯示出來,我找不到代碼行。如何從我的菜單用戶界面中刪除虛線?

enter image description here

這是我的代碼:

# -*- coding: utf-8 -*- 
from Tkinter import * 
import Image 
import ImageTk 
import tkFileDialog 

class Planificador(Frame): 
    def __init__(self,master): 
     Frame.__init__(self, master) 
     self.master = master 
     self.initUI() 

    def initUI(self): 
     self.master.title("test") 

     menubar = Menu(self.master, tearoff=0) 
     self.master.config(menu=menubar) 

     fileMenu = Menu(menubar) 
     fileMenu.add_command(label="Open config file", command=self.onOpen) 
     menubar.add_cascade(label="File", menu=fileMenu) 

     fileMenu.add_separator() 
     fileMenu.add_command(label="Exit", command=root.quit) 

     self.txt = Text(self) 
     self.txt.pack(fill=BOTH, expand=1) 

    def onOpen(self): 
     ftypes = [('Python files', '*.py'), ('All files', '*')] 
     dlg = tkFileDialog.Open(self, filetypes = ftypes) 
     fl = dlg.show() 

     if fl != '': 
      text = self.readFile(fl) 
      self.txt.insert(END, text) 

    def readFile(self, filename): 
     f = open(filename, "r") 
     text = f.read() 
     return text 

# Main 
if __name__ == "__main__": 
    # create interfacE 
    root = Tk() 
    aplicacion = Planificador(root) 
    root.mainloop() 

我想知道我可以刪除-------從代碼。
預先感謝

回答

10

tearoff選項fileMenuFalse(或0

fileMenu = Menu(menubar, tearoff=False) 
3

以除去虛線最好的辦法是使用option_add方法設置到*tearOff選項rootFalse,然後開始創建任何菜單。在這裏,你可以在你的initUI方法做到這一點是這樣的:

def initUI(self): 
    self.master.title("test") 
    self.master.option_add('*tearOff', False) 

這將刪除虛線爲您將創建這樣就不需要設置tearoff=False任何時候你創建一個菜單的每個菜單。

相關問題