qt设置控件的ICON
2016-04-24 19:38
411 查看
一个简单的按钮图片加载代码,一般人出现的问题都是加载的图片可能会很小,怎么解决这个问题呢?来看看下面的代码吧,对于相关的迷惑点我会给出讲解,同时在学习这个代码的过程中我们也学学其他的一些功能实现。如何显示中文、如何设置字体以及颜色等。
#include <QApplication> #include <QPushButton> #include <QLabel> #include <QGridLayout> #include <QTextCodec> int main(int argc, char *argv[]) { QApplication app(argc, argv); //以下三行用于支持中文的现实 QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb2312")); QTextCodec::setCodecForLocale(QTextCodec::codecForName("gb2312")); QTextCodec::setCodecForTr( QTextCodec::codecForName("gb2312")); QWidget *widget = new QWidget(); widget->setFixedSize(800, 600); widget->move(200,200); QPixmap *pixmap = NULL; pixmap = new QPixmap(200, 150); pixmap->load(":/castle.jpg"); QIcon *icon = new QIcon(*pixmap); QPushButton *button = new QPushButton(*icon, "", widget); //以下代码为加载图片的关键所在,因为默认加载的图片大小可能与按钮本身的尺寸相差较大, //需要自己来调节,所以可以在此人为的指定加载后的图片大小 button->setIconSize(QSize(190, 150)); button->setFixedSize(200, 150); QLabel *label = new QLabel(widget); QLabel *label1=new QLabel(widget); label->setPixmap(*pixmap); label->setFixedSize(200, 150); label1->setText("Qt 按钮背景图片的加载"); //以下代码用于设置label1字体显示的大小 label1->setStyleSheet("font-size : 53px"); //以下三句代码与以上代码可以实现相同的功能,但是区别在于,以下三句代码的作用范围是对整个界面的字体都产生作用。 //QFont font = app .font(); //font.setPointSize(53); //app.setFont(font); //设置label1的颜色 QPalette pe; pe.setColor(QPalette::WindowText,Qt::blue); label1->setPalette(pe); QGridLayout *layout=new QGridLayout; layout->addWidget(button,0,0); layout->addWidget(label,0,1); layout->addWidget(label1,1,0,2,1); widget->setLayout(layout); widget->showNormal(); return app.exec(); }
相关文章推荐
- Qt获取office文件内容
- QT基础(二)----鼠标、键盘事件处理机制、信息拦截机制
- 关于安装QT VS2013中我遇到的各种问题
- QT学习笔记----解决QT无法显示汉字问题
- 在 Qt 中搭建 qwt (超详版)
- Qt webEngine的前世今生
- Qt Creator和MinGW编译OpenCV
- QT学习之路(一)
- Qt4.8下应用OpenCV2.4.4搭建环境详细步骤(win7系统)
- qt 控件属性修改
- QT 工程文件元素配置项 Creating Project Files
- Qt QML
- qt类型转换
- Qt Creator Plug-in Gallery
- Qt基础(一)----按钮,文本框,窗口,布局,选项框等等
- qt中的OpenGL代码框架
- QT网络编程笔记
- qt中打开摄像头
- Qt之图形(绘制文本)
- Qt之图形(绘制文本)