glade java_如何在Java Gnome / GTK程序中使用Glade UI(.glade文件)?
发布日期:2021-06-24 15:57:42 浏览次数:2 分类:技术文章

本文共 1366 字,大约阅读时间需要 4 分钟。

我在互联网上做了一项研究,寻找教程/文档来解释如何在Java Gnome项目中使用Glade中设计的UI,但没有运气.我已经知道如何使用Java Gnome / GTK从代码创建UI.无论如何,我想使用我在Java Gnome / Gtk项目中创建的Glade UI,但我不知道从哪里开始.请告诉我:

>我需要安装哪些软件包;

>如何将我用Glade(.glade文件)创建的UI与我的Java Gnome / Gtk项目(特别是在Eclipse中)集成;

>举个例子.

提前致谢.

这就是我的Glade UI的外观(只需点击图片即可看到更大):

cgX9C.png

这是上面UI的XML代码:

False

center

True

False

162

25

True

True

start

end

11

49

162

25

True

True

start

end

True

271

49

25

True

False

*

216

49

Calculate!!!

False

84

27

True

True

True

False

181

93

解决方法:

好的,你需要:

> Init GTK库

>创建一个Builder对象

>检索窗口小部件

>显示窗口小部件

我假设您已经在Linux系统中安装了java-gnome库并在eclipse项目中导入了jar(项目属性 – java构建路径 – 添加外部jar – /usr/share/java/gtk.jar).

示例代码:

Gtk.init(args); //Init library

Builder b = new Builder(); //Create builder

b.addFromFile("filename.glade"); //Load layout from file

Window w = (Window) b.getObject("myWindowName"); //Retrieve an object

w.showAll(); //Show window

Gtk.main();

这是它应该工作的方式.如果要在对象上设置侦听器,例如按钮,您可以按照之前的窗口检索对象,然后:

button.connect(new Clicked() {

@Override

public void onClicked(Button arg0) {

// Do what you want

}

});

它适合你吗?嗯,这不适合我.

问题是我的代码在调用Builder.addFromFile(filename)时抛出异常

java.text.ParseException: Invalid object type `GtkLabel’

错误是关于树中的第一个元素.

经过深入研究后,我发现由于已知的bug从未修复过,您需要在使用之前预先定义每个小部件:在这种情况下只需调用

new Label();

在创建构建器之前.

显然,这不是以这种方式工作,并将在未来修复.

有关此问题的更多信息:

希望这可以帮助……

标签:ubuntu,java,user-interface,gtk,glade

来源: https://codeday.me/bug/20190529/1180040.html

转载地址:https://blog.csdn.net/weixin_33682804/article/details/115064249 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java 常用数据库_java连接常用数据库
下一篇:2018转行的java学习_2018java平均工资,想转行学java的快点上车

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月28日 04时46分26秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章