当前位置: 首页 > news >正文

公司做网站的意义山东建设执业师专业官方网站

公司做网站的意义,山东建设执业师专业官方网站,西安大网站建设公司排名,linux wordpress伪静态QT中资源文件resourcefile的使用 之前添加图标的方法使用资源文件的方法创建资源文件资源文件添加前缀资源文件添加资源使用资源文件中的资源 使用API完成布局使用QHBoxLayout完成水平布局使用QVBoxLayout完成垂直布局使用QGridLayout完成网格布局 在Qt中引入资源文件好处在于他… QT中资源文件resourcefile的使用 之前添加图标的方法使用资源文件的方法创建资源文件资源文件添加前缀资源文件添加资源使用资源文件中的资源 使用API完成布局使用QHBoxLayout完成水平布局使用QVBoxLayout完成垂直布局使用QGridLayout完成网格布局 在Qt中引入资源文件好处在于他能提高应用程序的部署效率并且减少一些错误的发生。 在程序编译过程中 添加到资源文件中的文件也会以二进制的形式被打包到可执行程序中这样这些资源就永远和可执行程序捆绑到一起了不会出现加载资源却找不到的问题。 资源文件中一般添加的都是比较小的资源比如 图片配置文件MP3 等如果是类似视频这类比较大的文件就不适合放到资源文件中了。 之前添加图标的方法 // 创建图标对象 QIcon::QIcon(const QString fileName); // QWidget类的 公共成员函数 void setWindowIcon(const QIcon icon);// 给窗口设置图标 // 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载 // 发布 exe 需要额外发布图片, 将其部署到某个目录中 setWindowIcon(QIcon(d:\\pic\\1.ico));// 给窗口设置图标 // 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载 // 发布 exe 需要额外发布图片, 将其部署到某个目录中完整代码 #include mainwindow.h #include ui_mainwindow.h #include QIconMainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-setupUi(this);// 创建图标对象QIcon Q(C://Users//DYF//Pictures//a.png);// QWidget类的 公共成员函数this-setWindowIcon(Q);// 给窗口设置图标// 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载// 发布 exe 需要额外发布图片, 将其部署到某个目录中//setWindowIcon(QIcon(d:\\pic\\1.ico));}MainWindow::~MainWindow() {delete ui; }使用资源文件的方法 创建资源文件 资源文件添加前缀 一个资源文件中可以添加多个前缀, 前缀就是添加的资源在资源文件中的路径, 前缀根据实际需求制定即可, 路径以 / 开头 资源文件添加资源 资源文件放到什么地方? 放到和 项目文件 .pro 同一级目录或者更深的目录中错误的做法: 将资源文件放到 .pro文件的上级目录, 这样资源文件无法被加载到 使用资源文件中的资源 #include mainwindow.h #include ui_mainwindow.h #include QIconMainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-setupUi(this);// 创建图标对象QIcon Q(:/new/prefix1/C:/Users/DYF/Pictures/a.png);// QWidget类的 公共成员函数this-setWindowIcon(Q);// 给窗口设置图标// 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载// 发布 exe 需要额外发布图片, 将其部署到某个目录中//setWindowIcon(QIcon(d:\\pic\\1.ico));}MainWindow::~MainWindow() {delete ui; }我们常用的资源文件添加方式 就是把资源文件放在pro同一级目录或者更加深层次的目录中 对于动作中添加资源文件 使用API完成布局 // 在布局最后面添加一个窗口 void QLayout::addWidget(QWidget *w); // 将某个窗口对象从布局中移除, 窗口对象如果不再使用需要自己析构 void QLayout::removeWidget(QWidget *widget); // 设置布局的四个边界大小, 即: 左、上、右和下的边距。 void QLayout::setContentsMargins(int left, int top, int right, int bottom); // 设置布局中各个窗口之间的间隙大小 void setSpacing(int);使用QHBoxLayout完成水平布局 // 创建符窗口对象 QWidget *window new QWidget; // 创建若干个子窗口对象 QPushButton *button1 new QPushButton(One); QPushButton *button2 new QPushButton(Two); QPushButton *button3 new QPushButton(Three); QPushButton *button4 new QPushButton(Four); QPushButton *button5 new QPushButton(Five);// 创建水平布局对象 QHBoxLayout *layout new QHBoxLayout; // 将子窗口添加到布局中 layout-addWidget(button1); layout-addWidget(button2); layout-addWidget(button3); layout-addWidget(button4); layout-addWidget(button5);// 将水平布局设置给父窗口对象 window-setLayout(layout); // 显示父窗口 window-show();得到的是单独的控件 如果想让控件嵌入Mainwindow中 #include mainwindow.h #include ui_mainwindow.h #include QIconMainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-setupUi(this);// 创建图标对象QIcon Q(:/new/prefix1/img/a.png);// QWidget类的 公共成员函数this-setWindowIcon(Q);// 给窗口设置图标// 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载// 发布 exe 需要额外发布图片, 将其部署到某个目录中//setWindowIcon(QIcon(d:\\pic\\1.ico));//使用API布局// 创建符窗口对象//QWidget *window1 new QWidget();// 创建若干个子窗口对象QPushButton *button1 new QPushButton(One);QPushButton *button2 new QPushButton(Two);QPushButton *button3 new QPushButton(Three);QPushButton *button4 new QPushButton(Four);QPushButton *button5 new QPushButton(Five);// 创建水平布局对象QHBoxLayout *layout1 new QHBoxLayout;// 将子窗口添加到布局中layout1-addWidget(button1);layout1-addWidget(button2);layout1-addWidget(button3);layout1-addWidget(button4);layout1-addWidget(button5);// 将水平布局设置给父窗口对象this-ui-widget_3-setLayout(layout1);// 显示父窗口this-ui-widget_3-show(); }MainWindow::~MainWindow() {delete ui; } 对应的在Mainwindow中添加widget控件 最终的效果为 使用QVBoxLayout完成垂直布局 //使用API布局//创建垂直布局// 创建符窗口对象QWidget *window2 new QWidget;// 创建若干个子窗口对象QPushButton *button21 new QPushButton(One);QPushButton *button22 new QPushButton(Two);QPushButton *button23 new QPushButton(Three);QPushButton *button24 new QPushButton(Four);QPushButton *button25 new QPushButton(Five);// 创建垂直布局对象QVBoxLayout *layout2 new QVBoxLayout;// 将子窗口添加到布局中layout2-addWidget(button21);layout2-addWidget(button22);layout2-addWidget(button23);layout2-addWidget(button24);layout2-addWidget(button25);// 将水平布局设置给父窗口对象window2-setLayout(layout2);// 显示父窗口window2-show(); 嵌入到主窗口中 #include mainwindow.h #include ui_mainwindow.h #include QIconMainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-setupUi(this);// 创建图标对象QIcon Q(:/new/prefix1/img/a.png);// QWidget类的 公共成员函数this-setWindowIcon(Q);// 给窗口设置图标// 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载// 发布 exe 需要额外发布图片, 将其部署到某个目录中//setWindowIcon(QIcon(d:\\pic\\1.ico));//使用API布局// 创建符窗口对象//QWidget *window1 new QWidget();// 创建若干个子窗口对象QPushButton *button1 new QPushButton(One);QPushButton *button2 new QPushButton(Two);QPushButton *button3 new QPushButton(Three);QPushButton *button4 new QPushButton(Four);QPushButton *button5 new QPushButton(Five);// 创建水平布局对象QHBoxLayout *layout1 new QHBoxLayout;// 将子窗口添加到布局中layout1-addWidget(button1);layout1-addWidget(button2);layout1-addWidget(button3);layout1-addWidget(button4);layout1-addWidget(button5);// 将水平布局设置给父窗口对象this-ui-widget_3-setLayout(layout1);// 显示父窗口this-ui-widget_3-show();//使用API布局//创建垂直布局// 创建符窗口对象//QWidget *window2 new QWidget;// 创建若干个子窗口对象QPushButton *button21 new QPushButton(One);QPushButton *button22 new QPushButton(Two);QPushButton *button23 new QPushButton(Three);QPushButton *button24 new QPushButton(Four);QPushButton *button25 new QPushButton(Five);// 创建垂直布局对象QVBoxLayout *layout2 new QVBoxLayout;// 将子窗口添加到布局中layout2-addWidget(button21);layout2-addWidget(button22);layout2-addWidget(button23);layout2-addWidget(button24);layout2-addWidget(button25);// 将水平布局设置给父窗口对象this-ui-widget_4-setLayout(layout2);// 显示父窗口this-ui-widget_4-show(); }MainWindow::~MainWindow() {delete ui; }其中主窗口ui文件中添加的widget为 最终运行效果为 使用QGridLayout完成网格布局 // 构造函数 QGridLayout::QGridLayout(); QGridLayout::QGridLayout(QWidget *parent);// 添加窗口对象到网格布局中 /* 参数:- widget: 添加到布局中的窗口对象- row: 添加到布局中的窗口对象位于第几行 (从0开始)- column: 添加到布局中的窗口对象位于第几列 (从0开始)- alignment: 窗口在布局中的对齐方式, 没有特殊需求使用默认值即可 */ void QGridLayout::addWidget(QWidget *widget, int row, int column, Qt::Alignment alignment Qt::Alignment());/* 参数:- widget: 添加到布局中的窗口对象- fromRow: 添加到布局中的窗口对象位于第几行 (从0开始)- fromColumn: 添加到布局中的窗口对象位于第几列 (从0开始)- rowSpan: 添加的窗口从 fromRow 行开始跨越的行数- columnSpan: 添加的窗口从 fromColumn 列开始跨越的列数- alignment: 窗口在布局中的对齐方式, 没有特殊需求使用默认值即可 */ void QGridLayout::addWidget( QWidget *widget, int fromRow, int fromColumn, int rowSpan, int columnSpan, Qt::Alignment alignment Qt::Alignment());// 设置 column 对应的列的最新宽度, 单位: 像素 void QGridLayout::setColumnMinimumWidth(int column, int minSize);// 设置布局中水平方向窗口之间间隔的宽度 void QGridLayout::setHorizontalSpacing(int spacing);// 设置布局中垂直方向窗口之间间隔的宽度 void QGridLayout::setVerticalSpacing(int spacing);实际demo //使用API布局//创建网格布局// 创建父窗口对象QWidget* window3 new QWidget;// 创建子窗口对象QPushButton *button31 new QPushButton(One);QPushButton *button32 new QPushButton(Two);QPushButton *button33 new QPushButton(Three);QPushButton *button34 new QPushButton(Four);QPushButton *button35 new QPushButton(Five);QPushButton *button6 new QPushButton(Six);// 多行文本编辑框QTextEdit* txedit3 new QTextEdit;txedit3-setText(我占用了两行两列的空间哦。);QGridLayout* layout new QGridLayout;// 按钮起始位置: 第1行, 第1列, 该按钮占用空间情况为1行1列layout-addWidget(button1, 0, 0);// 按钮起始位置: 第1行, 第2列, 该按钮占用空间情况为1行1列layout-addWidget(button2, 0, 1);// 按钮起始位置: 第1行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button3, 0, 2);// 编辑框起始位置: 第2行, 第1列, 该按钮占用空间情况为2行2列layout-addWidget(txedit3, 1, 0, 2, 2);// 按钮起始位置: 第2行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button4, 1, 2);// 按钮起始位置: 第3行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button5, 2, 2);// 按钮起始位置: 第4行, 第1列, 该按钮占用空间情况为1行3列layout-addWidget(button6, 3, 0, 1, 3);// 网格布局设置给父窗口对象window3-setLayout(layout);// 显示父窗口window3-show();嵌入到主窗口中 添加控件widget_5 #include mainwindow.h #include ui_mainwindow.h #include QIcon #include QTextEditMainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-setupUi(this);// 创建图标对象QIcon Q(:/new/prefix1/img/a.png);// QWidget类的 公共成员函数this-setWindowIcon(Q);// 给窗口设置图标// 弊端: 发布的 exe 必须要加载 d:\\pic\\1.ico 如果当前主机对应的目录中没有图片, 图标就无法被加载// 发布 exe 需要额外发布图片, 将其部署到某个目录中//setWindowIcon(QIcon(d:\\pic\\1.ico));//使用API布局// 创建符窗口对象//QWidget *window1 new QWidget();// 创建若干个子窗口对象QPushButton *button1 new QPushButton(One);QPushButton *button2 new QPushButton(Two);QPushButton *button3 new QPushButton(Three);QPushButton *button4 new QPushButton(Four);QPushButton *button5 new QPushButton(Five);// 创建水平布局对象QHBoxLayout *layout1 new QHBoxLayout;// 将子窗口添加到布局中layout1-addWidget(button1);layout1-addWidget(button2);layout1-addWidget(button3);layout1-addWidget(button4);layout1-addWidget(button5);// 将水平布局设置给父窗口对象this-ui-widget_3-setLayout(layout1);// 显示父窗口this-ui-widget_3-show();//使用API布局//创建垂直布局// 创建符窗口对象//QWidget *window2 new QWidget;// 创建若干个子窗口对象QPushButton *button21 new QPushButton(One);QPushButton *button22 new QPushButton(Two);QPushButton *button23 new QPushButton(Three);QPushButton *button24 new QPushButton(Four);QPushButton *button25 new QPushButton(Five);// 创建垂直布局对象QVBoxLayout *layout2 new QVBoxLayout;// 将子窗口添加到布局中layout2-addWidget(button21);layout2-addWidget(button22);layout2-addWidget(button23);layout2-addWidget(button24);layout2-addWidget(button25);// 将水平布局设置给父窗口对象this-ui-widget_4-setLayout(layout2);// 显示父窗口this-ui-widget_4-show();//使用API布局//创建网格布局// 创建父窗口对象//QWidget* window3 new QWidget;// 创建子窗口对象QPushButton *button31 new QPushButton(One);QPushButton *button32 new QPushButton(Two);QPushButton *button33 new QPushButton(Three);QPushButton *button34 new QPushButton(Four);QPushButton *button35 new QPushButton(Five);QPushButton *button6 new QPushButton(Six);// 多行文本编辑框QTextEdit* txedit3 new QTextEdit;txedit3-setText(我占用了两行两列的空间哦。);QGridLayout* layout new QGridLayout;// 按钮起始位置: 第1行, 第1列, 该按钮占用空间情况为1行1列layout-addWidget(button1, 0, 0);// 按钮起始位置: 第1行, 第2列, 该按钮占用空间情况为1行1列layout-addWidget(button2, 0, 1);// 按钮起始位置: 第1行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button3, 0, 2);// 编辑框起始位置: 第2行, 第1列, 该按钮占用空间情况为2行2列layout-addWidget(txedit3, 1, 0, 2, 2);// 按钮起始位置: 第2行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button4, 1, 2);// 按钮起始位置: 第3行, 第3列, 该按钮占用空间情况为1行1列layout-addWidget(button5, 2, 2);// 按钮起始位置: 第4行, 第1列, 该按钮占用空间情况为1行3列layout-addWidget(button6, 3, 0, 1, 3);// 网格布局设置给父窗口对象this-ui-widget_5-setLayout(layout);// 显示父窗口this-ui-widget_5-show(); }MainWindow::~MainWindow() {delete ui; } 效果为
http://www.sadfv.cn/news/203085/

相关文章:

  • 珠海做网站制作关键词网站推广
  • 网站开发合同适用印花税wordpress自定义文章类型模板
  • 温州网站关键词推广做亚马逊网站一般发什么快递
  • 广安市国土资源局网站建设银行系统网站模板
  • 网站开发 之cookie一个企业做网站的意义
  • 青海建设工程信息网站网易企业邮箱登录入口网页版
  • 做seo营销网站wordpress jae
  • 济南网站建设 选聚搜网络网络营销产品的概念举例
  • 做网站哪些公司娄底网站推广
  • 汉中市建设工程质量安全监督站官网江西省上饶市建设局网站
  • 郑州东站附近网站建设公司明年房价走势最新消息
  • 高端网站建设免费分析erp软件多少钱一套
  • 网站源码 带后台百度站长平台诊断
  • 北京网站建设手机app电子商务类似淘宝网站建设费用
  • 做rap的网站高端网站建设要到磐石网络
  • 百度竞价 十一 pc网站 手机网站网页设计公司招聘
  • 晋城网络公司做网站的域名服务商网站
  • 做淘宝客最好的网站是什么网站小程序登录注册
  • 查学校去哪个网站百度站点提交工具
  • 网站正在建设中单页河北网站开发联系电话
  • 做电影网站怎么拿到版权网站怎么重装wordpress
  • 秦皇岛网站制作与网站建设公司ftp里找到的index文件查看网站建设中
  • 公司网站备案材料什么是sem营销
  • 违法网站开发wordpress学做网站
  • seo排名技巧站长工具seo推广
  • 学网站建设需要多久百度上传网站服务器
  • 深圳网站建设公司设计铜陵app网站做营销招聘信息
  • 网站空间域名续费合同自己做个网站用什么软件好
  • 媒体网站推广方法wordpress同步谷歌博客
  • 网站页面设计需要遵循的六大原则做特产网站