Chinaunix首页 | 论坛 | 博客
  • 博客访问: 303540
  • 博文数量: 45
  • 博客积分: 1429
  • 博客等级: 上尉
  • 技术积分: 422
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-19 09:12
文章分类

全部博文(45)

文章存档

2021年(1)

2020年(1)

2019年(1)

2016年(4)

2015年(3)

2011年(4)

2010年(31)

我的朋友

分类: LINUX

2010-06-30 11:08:37

以前写界面都是直接用代码写,效率不高,但是源代码可跟踪。现在在网上拿到这个snmpb的开源程序,界面都是那ui做的。捣鼓了一通,总结如下:

自己新建了一个ui文件,例如ip.ui。然后依葫芦画瓢,在需要调用处#include “ui_ip.h”,实际上这个头文件是依据makefile生成的,这个程序中生成在./ui文件夹下,所以记得修改makefile(是不是不用手动去改,直接改pro文件可以么?),各种依赖关系要改好。

在主窗体上新建了一个menu action,点击弹出一个对话框。这个对话框就是我新加的ui,可以查看ui_ip.h可以看到这个类的名字,直接可以调用其构造函数xxx();注意这个对话框new的位置。new的时候不弹出。这里用了这样的处理方法:

除了这个new这个ui为ip之外,再new一个QDialog,比如说是ipw,然后ip->setupUi(ipw);

类似preferences.cpp里面的做法:

    p = new Ui_Preferences();
    pw = new QDialog();
    p->setupUi(pw);

然后在Excute函数中调用exec()使对话框显示

void Preferences::Execute (void)
{
    if(pw->exec() == QDialog::Accepted)
    {

...........



阅读(1506) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~