lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

开发基于GTK+或QT的应用程序
回复
nieyv
帖子: 11
注册时间: 2011-01-10 12:50
送出感谢: 0
接收感谢: 0

lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#1

帖子 nieyv » 2011-01-10 12:56

lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#include <gtk/gtk.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
GtkWidget *win, *label;
gtk_set_locale();
gtk_init(&argc, &argv);
win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(win), 500, 300);
gtk_window_set_title(GTK_WINDOW(win), "Hello GTK+ !!!");
gtk_signal_connect(GTK_OBJECT(win), "destroy", GTK_SIGNAL_FUNC(gtk_exit), NULL);
label=gtk_label_new("Hello, GTK+\n");
gtk_container_add(GTK_CONTAINER(win), GTK_WIDGET(label));
gtk_widget_show_all(win);
gtk_main();
return 0;
}

上面这个编译,run都没有任何问题,但是一旦使用glade,灵异事件就出现了!

下面是使用glade的代码:

#include <gtk/gtk.h>
#include <glade/glade.h>

int main(int argc,char **argv) {
GladeXML *gxml;
GtkWidget *window;
gtk_init(&argc,&argv);
gxml=glade_xml_new("test.glade",NULL,NULL);
glade_xml_signal_autoconnect(gxml);
window=glade_xml_get_widget(gxml,"window1");
gtk_widget_show(window);
gtk_main();
return 0;
}

以上代码,在eclipse编译没有问题,用eclipse的run也可以正常执行,出现窗口!!!

但是,如果不使用eclipse来执行,直接在文件夹里面运行可执行程序,就什么反应都没有,就如同没有点击一样,但是没有使用glade的第一段代码就没有这个问题!!!

望各位大侠指点一二!!!!

谢谢…………
qimingos
帖子: 226
注册时间: 2007-06-23 14:26
送出感谢: 0
接收感谢: 0
联系:

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#2

帖子 qimingos » 2011-01-10 13:13

是不是:
gxml=glade_xml_new("test.glade",NULL,NULL);
出现了问题?
可能是没有找到test.glade这个文件。所有,后面的都没有执行。改成这样,再试一下,就知道问题出现在哪儿了:
#include <gtk/gtk.h>
#include <glade/glade.h>

int main(int argc,char **argv) {
GladeXML *gxml;
GtkWidget *window;
gtk_init(&argc,&argv);
gxml=glade_xml_new("test.glade",NULL,NULL);
if(!gxml){fprintf(stderr, "load test.glade failed!\r\n");return 1;}
glade_xml_signal_autoconnect(gxml);
window=glade_xml_get_widget(gxml,"window1");
if(!window){fprintf(stderr, "Get window1 failed!\r\n");return 1;}
gtk_widget_show(window);
gtk_main();
return 0;
}

获取eclipse中运行的时候和独立运行时某些环境变量不同,从而导致eclipse中运行时可以找到该文件,独立运行时无法找到。
我一直在努力!

我的博客:xxNull
nieyv
帖子: 11
注册时间: 2011-01-10 12:50
送出感谢: 0
接收感谢: 0

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#3

帖子 nieyv » 2011-01-10 15:33

谢谢楼上的大侠!

我照着你的代码改了,可惜依然没有反应,也没有什么提示!

test.glade这个文件我已经拷贝到可执行程序同一个目录下面了!
qimingos
帖子: 226
注册时间: 2007-06-23 14:26
送出感谢: 0
接收感谢: 0
联系:

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#4

帖子 qimingos » 2011-01-12 5:01

还有可能是另外一个原因,test.glade没有足够的权限。给他加上运行权限。如果还不行,你可以把源码和你编译后的程序发给我,我帮你看一下。


我的邮箱:xxNull@163.com
我一直在努力!

我的博客:xxNull
nieyv
帖子: 11
注册时间: 2011-01-10 12:50
送出感谢: 0
接收感谢: 0

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#5

帖子 nieyv » 2011-01-12 21:29

谢谢楼上的兄弟们!!!!

把系统换成Xubuntu就好了,太奇怪了,难道是Lxde桌面的问题!!!
foxbat123
帖子: 12
注册时间: 2012-06-27 14:50
送出感谢: 0
接收感谢: 0

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#6

帖子 foxbat123 » 2012-07-05 22:37

你是怎么配置的 Eclipse 的 GTK+ 开发环境?


我怎么配都不行呢。
头像
supercatexpert
帖子: 403
注册时间: 2010-01-17 15:39
系统: Debian Wheezy AMD64
送出感谢: 0
接收感谢: 6 次
联系:

Re: lubuntu环境下,使用eclipse开发GTK遇到的奇怪问题!!!!!!

#7

帖子 supercatexpert » 2012-07-05 22:47

路径问题。在GLib 2.32的新特性中,允许资源类文件也同时编译到程序中(GResource),详细的请参考GLib和GTK+的参考手册。
这样做就可以避免该死的路径问题。
OS: Debian Wheezy (Testing) for AMD64~~~
Mobile Phone: Nokia N900, OS: Maemo 5.0 (Base on Debian)~~~
本人的项目: RhythmCat(Linux下的音乐播放器.....支持歌词等功能...)
http://code.google.com/p/rhythmcat

RhythmCat 2进行中 (https://github.com/supercatexpert/RhythmCat2/)
回复

回到 “GTK+和QT”