Chinaunix首页 | 论坛 | 博客
  • 博客访问: 426287
  • 博文数量: 32
  • 博客积分: 1843
  • 博客等级: 上尉
  • 技术积分: 634
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-25 14:30
个人简介

Nothing is impossible

文章分类

全部博文(32)

文章存档

2013年(4)

2012年(13)

2011年(6)

2008年(9)

分类: C/C++

2012-12-05 10:27:18

QT学习小结

学习使用QT有段时间了,初步先做下小结,留作备忘。

目录








==========================================================================
1. 获取屏幕或工作区大小

  1. #include <QDesktopWidget>

  2.     //获取屏幕分辨率
  3.     qDebug()<< "screen width:"<<QApplication::desktop()->width();
  4.     qDebug()<< "screen height:"<<QApplication::desktop()->height();
  5.     //下面方法也可以
  6.     qDebug()<< "screen width:"<<qApp->desktop()->width();
  7.     qDebug()<< "screen height:"<<qApp->desktop()->height();

  8.     //获取客户使用区大小
  9.     qDebug()<< "screen avaliabe width:"<<QApplication::desktop()->availableGeometry().width();
  10.     qDebug()<< "screen avaliabe heigth:"<<QApplication::desktop()->availableGeometry().height();

  11.     //获取应用程序矩形大小
  12.     qDebug()<< "application avaliabe width:"<<QApplication::desktop()->screenGeometry().width();
  13.     qDebug()<< "application avaliabe heigth:"<<QApplication::desktop()->screenGeometry().height();


---------------------------------------------------------------------------------------------

2. 设置应用程序图标
a. 在资源文件(*.res)中添加图标文件
资源文件代码如下:

  1. bmp/logo.png

b. 在setupUi函数中添加相应代码
代码如下:

  1. //set icon
  2.         QIcon icon;
  3.         icon.addPixmap(QPixmap(QString::fromUtf8(":/bmp/logo.png")), QIcon::Normal, QIcon::Off);
  4.         WndTest->setWindowIcon(icon);
  5.         WndTest->setIconSize(QSize(256, 256));


---------------------------------------------------------------------------------------------

3. 在程序中显示图片(QLabel)
a. 在资源文件(*.res)中添加图片文件(方法同)
b. 在程序的相应位置中添加相应代码
代码如下:

  1. QLabel *lLogo;

  2.         lLogo = new QLabel();
  3.         lLogo->setObjectName(QString::fromUtf8("lLogo"));
  4.         lLogo->setGeometry(QRect(160, 110, 128, 128));
  5.         lLogo->setPixmap(QPixmap(QString::fromUtf8(":/bmp/logo.png")));
  6.         lLogo->setScaledContents(true);


---------------------------------------------------------------------------------------------

4. 字体更改

  1. QFont font;
  2.             font.setPointSize(40);
  3.             font.setBold(true);
  4.             font.setWeight(75);
  5.             QLabel *lfontnew = new QLabel();
  6.             lfontnew->setFont(font);


---------------------------------------------------------------------------------------------

5. 文本颜色更改

  1. void WndTest::changeColor( QWidget *obj, QColor clr )
  2. {
  3.     QPalette *palette = new QPalette();
  4.     palette->setColor(QPalette::Text,clr);
  5.     obj->setPalette(*palette);
  6.     delete palette;
  7. }

调用:

  1. changeColor( leid, Qt::blue );
  2. //或
  3. changeColor(leid,QColor::fromRgb(240,240,240));


---------------------------------------------------------------------------------------------

6. 日期与时间转换成QString

  1. QString date_str = QDate::currentDate().toString(QString("yyyyMMdd")); //"yyyyMMdd"为转换格式,该格式转换后日期如"20121205",还有更多格式,请查看帮助
  2. QString time_str = QTime::currentTime().toString(QString("hhmmss")); //"hhmmss"为转换格式,该格式转换后时间如"080359",还有更多格式,请查看帮助


---------------------------------------------------------------------------------------------

(未完待续)
阅读(6141) | 评论(0) | 转发(4) |
给主人留下些什么吧!~~