Chinaunix首页 | 论坛 | 博客
  • 博客访问: 458620
  • 博文数量: 107
  • 博客积分: 6073
  • 博客等级: 准将
  • 技术积分: 790
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-14 15:34
文章分类

全部博文(107)

文章存档

2010年(1)

2009年(106)

分类: C/C++

2009-12-11 09:22:54

作者:wangxinus,
来源:
http://wangxinus.cublog.cn
说明:原创文章欢迎转载,交流请Email给作者

1、是程序启动时屏幕居中
#include
//....
int x = (qApp->desktop()->width()- this->width()) / 2;
int y = (qApp->desktop()->height() - this->height()) / 2;
this->move(x, y);
//....

2、工具栏上的QAction对象保持按下状态
myAction->setCheckable(true);

3、使用启动画面
#include
//....main(...)...
//QApplication app(..)...
QSplashScreen* splash = new QSplashScreen;
splash->setPixmap(QPixmap(":/images/start_.png"));
splash->show();
qApp->processEvents();
MainWindow mainWindow;
//....
mainWindow.show();
splash->finish(&mainWindow);
delete splash;
//.........

4、Windows下设置Qt程序.exe文件的图标
建立一个资源文件,app.rc,写入如下一行
IDI_ICON1      ICON     DISCARDABLE   "your_app_icon.ico"
在你的工程文件***.pro中添加
RC_FILE = app.rc
然后重新编译一次程序就OK,your_app_icon.ico已经被编译在程序中,发布时不需要带。

5、熟悉Qt提供的标准对话框,在程序中大量用到
//QtDemo中Dialogs/Standard Dialogs中有演示和实现代码
QInputDialog中包含了输入数字,文本, 下拉列表等标准对话框。
QColorDialog中包含了一个标准颜色选择对话框。
QFontDialog中包含了一个标准字体选择对话框。
QFileDialog中包含了打开单个和多个文件,选择文件夹,保存文件的标准对话框。
QMessageBox中包含了提示,警告,错误,问答等标准对话框。
这个都可以在Qt Assist (SDK中就是QtCreator的Help选项中)相应类的静态函数中查到。

6、正则表达式QRegExp的使用
QtDemo中Tools/Regular Expressions 是Qt的正则表达式的测试程序,比较有用。
QtAssist中QRegExp条目下有QRegExp的使用说明,只是可能不太详尽。
一篇正则表达式的网文,QRegExp与之类似,可以参考。


7、如何添加右键菜单和如何在在item中添加右键菜单可以参考这里
http://blog.chinaunix.net/u3/103355/showart_2101226.html
http://blog.chinaunix.net/u3/103355/showart_2101288.html

8、Qt程序的多国语言界面自由切换的实现参考这里
http://blog.chinaunix.net/u3/103355/showart_2090421.html

9、后面添加Q_OBJECT宏时编译出现“undefined reference to vtable for”
简短的说,Clean整个工程,然后到工程目录下面把Makefile,Makefile.Debug,Makefile.Release都删除,基本都会解决。更详细可以参考这里:
http://blog.chinaunix.net/u3/103355/showart_2064628.html

10、创建停靠窗口
//这是我代码中的一段,MainWindow....
_dock = new QDockWidget(tr("Output Window"), this);
_output = new QTextEdit(_dock);
_dock->setWidget(_output);
_dock->setAllowedAreas(Qt::BottomDockWidgetArea);
addDockWidget(Qt::BottomDockWidgetArea, _dock);
viewMenu->addAction(_dock->toggleViewAction());
//......

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