GTK+ 像 Dock Panel 的视觉组件
我正在用Python开发一个小桌面应用程序。我希望它能在多个平台上运行,并且有一个类似(但更简单)的界面像Eclipse那样。我知道在微软的.NET中,和Eclipse布局一样的组件叫做DockPanel。
有没有人能帮我一下?因为Eclipse是用GTK+开发的,我想我只需要知道这个GUI组件的名字,或者告诉我在像Qt这样的GUI框架中它的另一个名字。
3 个回答
0
我不太确定什么是DockPanel,但有个名字里带“Dock”的类叫做“QDockWidget”。这个类通常是在“QMainWindow”里面使用的,它可以让你把窗口叠放在一起或者重新排列位置。你可以在这个链接上看到相关的图片:http://doc.qt.nokia.com/latest/qmainwindow.html
1
在GTK+中,有一个叫做gdl的停靠库,像Anjuta这个IDE就用到了它。不过,这个方案在跨平台使用上可能不是很友好。我觉得MonoDevelop是基于这个库来构建它的停靠功能的,但我可能记错了。
我个人在一个使用PyGTK(GTK 2.x)的IDE中用过这个应用。效果很好——我可以把多个窗口停靠在主界面的任何地方,还能把布局保存到一个XML文件里。不过,我还没有在PyGObject(GTK+ 3.x)中试过。
正如有人提到的,Eclipse并不是用Python/GTK写的,所以你需要去了解一下Eclipse使用的Java/SWT库来实现停靠功能,或者考虑使用像wxWidgets这样的工具包来寻找更好的跨平台解决方案。
0
我在pywx上找到了这个,关于高级用户界面模块的内容:http://www.wxpython.org/docs/api/wx.aui-module.html