Доброго времени суток, уважаемые.
Имеется приложение, написанное на языке Python. При нажатии на кнопку 1, которая находится на главном окне (root), создается второе окно (main), на котором также имеется одна кнопка 2.
Проблема в том, что при запуске второго окна (при нажатии на кнопку 1) автоматически запускается событие кнопки 2, а при нажатии на кнопку 2 ничего не происходит.
Прикрепляю исходный текст приложения.
# -*- coding: utf-8 -*-
from Tkinter import *
import os, linecache, shutil
user_home_dir = os.getenv('HOME')
class Application(Frame):
def find_device(self):
os.system("sudo python /home/alebo/UQS/scripts/find.py")
count = 0
for line in reversed(open("/home/alebo/fstab").readlines()):
count = count + 1
i = 1
#while i < count+2:
while i < 10:
output = open ("/home/alebo/%s"%i, 'r')
dev = linecache.getline("/home/alebo/%s"%i, 1)
dev = dev.strip("
")
fs = linecache.getline("/home/alebo/%s"%i, 2)
a = ["","","","","","","","","","","",""] # массив строк (dev + fs)
a[i] = ""
a[i] = "Device %s, TypeFS %s" % (dev, fs)
choices = ["%s"%a[i]]
for item in choices:
self.list.insert(END, item)
i = i + 2
def mount(self):
main = Tk() # создаётся главное окно
frame01 = Frame (main)
frame01.pack ()
frame02 = Frame (main)
frame02.pack ()
self.list = Listbox(frame01, width=27,heigh=7,bd=5, selectmode = SINGLE) # лист
self.list.pack(side = TOP)
self.find_device()
x = self.list.curselection()
self.button02 = Button(frame02, text="Примонтировать ", bg="white", fg="blue", command=self.mounting())
self.button02.pack( side = TOP)
def mounting(self):
print "aaa"
def createWidgets(self):
self.QUIT = Button(self, text="Quit", bg="white", fg="red", command=self.quit)
self.QUIT.pack({"side": "bottom"})
self.button1 = Button(frame1, text="Монтирование разделов HDD", bg="white", fg="blue", command=self.mount)
self.button1.pack( side = TOP)
def __init__(self, master=None):
Frame.__init__(self, master)
self.pack()
self.createWidgets()
root = Tk() # создаётся главное окно
root.title('Ubuntu Quick Start')
frame1 = Frame (root, width=50,heigh=7,bd=9)
frame1.pack ()
frame2 = Frame (root)
frame2.pack ()
frame3 = Frame (root)
frame3.pack ()
app = Application(master=root)
app.mainloop() # запуск главного окна и цикла его событий
root.destroy()
Будьте добры, помогите, пожалуйста.
Пользователь решил продолжить мысль 10 Августа 2010, 22:32:18:
Проблема решена!
