免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3327 | 回复: 4
打印 上一主题 下一主题

关于设置dialog窗口 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-15 21:48 |只看该作者 |倒序浏览
父窗口创建一个提示的错误dialog,我想实现必须先关闭diaolog窗口才可以
继续操作父窗口,应为父窗口是全屏显示的,如果父窗口覆盖掉dialog窗口,但是
又没有获取到焦点的话,这样就不能进行任何操作了。

论坛徽章:
0
2 [报告]
发表于 2008-10-16 08:21 |只看该作者
//弹出提示对话框
        int result;
        GtkWidget *dialog;
       
        dialog = gtk_message_dialog_new(GTK_WINDOW(wbus->window),GTK_DIALOG_MODAL,
                                GTK_MESSAGE_WARNING,
                                GTK_BUTTONS_YES_NO,
                                N_("Are you sure you want to exit the system?"));
       
        //FIXME:调整提示框的位置
        //gtk_window_set_gravity(GTK_WINDOW(dialog),GDK_GRAVITY_CENTER);
        gtk_window_move(GTK_WINDOW(dialog),wbus->draw_width/2-50,wbus->draw_height/2);
               
        result = gtk_dialog_run(GTK_DIALOG (dialog));
        switch(result){
                case GTK_RESPONSE_YES:
                        gtk_widget_destroy(dialog);
                        gtk_widget_destroy(wbus->window);
                        return;
                default:
                        break;
        }
       
        gtk_widget_destroy(dialog);

论坛徽章:
0
3 [报告]
发表于 2008-10-16 09:38 |只看该作者

回复 #2 chenzhixin 的帖子

谢谢,跟踪到gtk_message_dialog_new()的创建过程就知道怎样设置父子窗口之间的关系了。

论坛徽章:
0
4 [报告]
发表于 2008-10-16 10:20 |只看该作者

回复 #2 chenzhixin 的帖子

请问如何在新弹出来的窗口中设置某个控件获得焦点。
gtk_window_set_focus()不行,
必须先点击下新的窗口那个焦点才会落到设置的控件上。

论坛徽章:
0
5 [报告]
发表于 2008-10-20 12:27 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP