2017-06-19 69 views
1

我是新来的python,我目前正试图从一个已经在Glade中创建的旋转按钮获取一个值。我有以下的代码,试图得到该按钮的值,然后用它来过滤数据:从旋转按钮获取价值Glade/GTK3(python)

import gi 
gi.require_version('Gtk', '3.0') 
from gi.repository import Gtk 

class Handler: 

    def on_spinbutton1_value_changed(self, SpinButton): 
     Area = self.builder.get_object("spinbutton1") 
     Area = self.Area.get_value_as_int() 
     print Area 

builder = Gtk.Builder() 
builder.add_from_file("DataApp.glade") 
builder.connect_signals(Handler()) 

window = builder.get_object("MainWindow") 
window.show_all() 

Gtk.main() 

我没有得到任何错误,但是输入的号码也不能打印。有关如何让这个运行的任何建议?任何帮助是极大的赞赏!

回答

1

我猜你的程序格式是错误的。试试这个:

import gi 
gi.require_version('Gtk', '3.0') 
from gi.repository import Gtk, GdkPixbuf, Gdk 
import os, sys 

UI_FILE = "DataApp.glade"  

class GUI: 
    def __init__(self):  
     self.builder = Gtk.Builder() 
     self.builder.add_from_file(UI_FILE) 
     self.builder.connect_signals(self)  
     window = self.builder.get_object('MainWindow')  
     window.show_all() 

    def on_spinbutton1_value_changed(self, spinbutton): 
     print spinbutton.get_value_as_int() 

def main(): 
    app = GUI() 
    Gtk.main() 

if __name__ == "__main__": 
    sys.exit(main())