我想使用Glade设计一个GUI,并从中生成python代码。事情是,我找不到GladeGen。有谁知道它可以从哪里下载?我在哪里可以找到GladeGen?
3
A
回答
2
为什么不使用GUI设计器就像Anjuta或Glade程序,写出来glade XML并使用libglade的python绑定来使用XML文件......有点像XAML。
编辑,添加了一些链接,Glade.xml->蟒蛇
2
0
我的建议是 - 不生成代码。 Glade 3.6现在可以保存为GtkBuilder格式(xml),可以在代码中加载。这很容易处理!
0
似乎在启动板已经被复制到本商场仓库:
launchpad.net/~wattazoum: gladegen : Code : Python dev tools
(直接download tarball - 用它进行下面的代码段)
此外,链接到GladeGen作者的文章:
- Rapid Application Development with Python and Glade | Linux Journal
- Resources for “Rapid Application Development with Python and Glade” | Linux Journal
注意,在格莱德3.8.0,您可以将文件导出为任何Libglade
或GtkBuilder
;我做了一个小测试,显示你应该将文件保存为Libglade; GladeGen可以解析两种:
$ python2.7 GladeGen.py /tmp/test-libglade.glade TestMe TestMe
funcs
main <function main at 0xb72d98b4>
search_file <function search_file at 0xb72d964c>
classes
GladeWindow <class 'GladeWindow.GladeWindow'>
TestMe <class 'TestMe.TestMe'>
methods
('GladeWindow', '__init__')
('GladeWindow', 'hide')
('GladeWindow', 'set_callback_function')
('GladeWindow', 'set_search_path')
('GladeWindow', 'set_top_window')
('GladeWindow', 'show')
('TestMe', '__init__')
('TestMe', 'hide')
('TestMe', 'init')
('TestMe', 'set_callback_function')
('TestMe', 'set_search_path')
('TestMe', 'set_top_window')
('TestMe', 'show')
widgets
('GtkWindow', 'window1')
('GtkHBox', 'hbox1')
('GtkScrolledWindow', 'scrolledwindow1')
handlers
$ python2.7 GladeGen.py /tmp/test-gtkbuilder.glade TestMe2 TestMe2
funcs
main <function main at 0x95778ec>
search_file <function search_file at 0x9577684>
classes
GladeWindow <class 'GladeWindow.GladeWindow'>
TestMe2 <class 'TestMe2.TestMe2'>
methods
('GladeWindow', '__init__')
('GladeWindow', 'hide')
('GladeWindow', 'set_callback_function')
('GladeWindow', 'set_search_path')
('GladeWindow', 'set_top_window')
('GladeWindow', 'show')
('TestMe2', '__init__')
('TestMe2', 'hide')
('TestMe2', 'init')
('TestMe2', 'set_callback_function')
('TestMe2', 'set_search_path')
('TestMe2', 'set_top_window')
('TestMe2', 'show')
widgets
handlers
但是,如果你尝试运行导出的Python代码,只有第一个(python TestMe.py
)运行;而第二,gtkbuilder一个,将失败:
$ python2.7 TestMe2.py
(TestMe2.py:24883): libglade-WARNING **: Expected <glade-interface>. Got <interface>.
(TestMe2.py:24883): libglade-WARNING **: did not finish in PARSER_FINISH state
Traceback (most recent call last):
File "TestMe2.py", line 66, in <module>
main(sys.argv)
File "TestMe2.py", line 59, in main
w = TestMe2()
File "TestMe2.py", line 37, in __init__
self.init()
File "TestMe2.py", line 52, in init
GladeWindow.__init__(self, filename, top_window, widget_list, handlers)
File "/path/to/src/wattazoum_pydevtools_gladegen/src/GladeWindow.py", line 77, in __init__
self.xml = gtk.glade.XML(fname)
RuntimeError: could not create GladeXML object
好,我很高兴我仍然可以使用这个,因为显然它是不可能的格莱德生成/导出/创建/另存为Python代码...
...编辑:尽管,应该指出的是,出口就是:
def init(self):
filename = '/tmp/test-libglade.glade'
widget_list = [
'window1',
'hbox1',
'scrolledwindow1',
]
handlers = [
]
top_window = 'window1'
GladeWindow.__init__(self, filename, top_window, widget_list, handlers)
...也就是说,它只是接口的空地文件(几乎如在开始教程中),它实际上并没有创造Python代码,我预计,在翻译的代码,如:
self.window1 = gtk.Window(gtk.WINDOW_TOPLEVEL)
...等等...这是一个耻辱,因为那正是我所寻找的:)
相关问题
- 1. 我在哪里可以找到16F877A.h?
- 2. 我在哪里可以找到PyBluez API
- 3. 我在哪里可以找到Microsoft.Build.Utilities.v3.5
- 4. 我在哪里可以找到PHPUnit_Extensions_SeleniumTestCase?
- 5. 我在哪里可以找到compojure.html?
- 6. User.find_for_oauth - 我可以在哪里找到它?
- 7. 我在哪里可以找到com.mathworks.jmi包
- 8. 我在哪里可以找到Python类?
- 9. 我在哪里可以找到android-server.apk?
- 10. 我在哪里可以找到org.restlet.android.jar?
- 11. 我在哪里可以找到dict_keys类?
- 12. 我在哪里可以找到System.Linq.Dynamic dll?
- 13. 我在哪里可以找到InlinePageParser类?
- 14. 我在哪里可以找到ConnectivityMonitor()?
- 15. 我在哪里可以找到包org.omg.CosTransactions
- 16. 我在哪里可以找到.NET v1.0.5000.0?
- 17. 我在哪里可以找到$脚本?
- 18. 我在哪里可以找到ExpressionParseHelper?
- 19. 我在哪里可以找到ServerConnection类?
- 20. 我在哪里可以找到@ Html.FacebookSignedRequest()
- 21. 我在哪里可以找到的UIKit
- 22. 我在哪里可以找到Base64Encoder类?
- 23. 我在哪里可以找到UAAppReviewManager-iOS.bundle
- 24. 我在哪里可以找到Django get_absolute_url?
- 25. 我在哪里可以找到整洁
- 26. 我在哪里可以找到ssbdiagnose
- 27. Android:我在哪里可以找到startSubActivity()?
- 28. 我在哪里可以找到WSDL.exe?
- 29. 我在哪里可以找到.cargo/config?
- 30. Hrez.exe我在哪里可以找到它?
在sourceforge csv中最后一次提交`glc`似乎是在2002年;也有[Glade代码生成器 - gcgen](http://sourceforge.net/projects/gcgen/files/)与2010年的最后更新,它需要一个额外的XML库,它打包... – sdaau 2014-06-29 19:04:48