0421 P23  02登录窗口布局

界面的布局:

使用widget进行布局:水平、垂直、栅格

给用户名、密码、登录、退出按钮布局

使用弹簧:水平、垂直弹簧

首先拖拽几个控件:

编译生成程序,查看结果,发现问题:页面的布局不随着窗口大小变动位置。

使用弹簧控件,使用widget,使用Group Box

输入密码:选择输入时不显示明文

效果展示:

09控件-按钮组:

通过拖拽选择按钮的功能

给按钮添加图标:

拖拽按钮和代码解和,在List Widget中写诗:

在ui界面中,选中刚才拖得listWidget,查看一下名字是:listWidget,要在编辑(写代码)界面用到

代码:

#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//单选按钮的默认值ui->radioButton_man->setChecked(true);//利用listwidget写诗QListWidgetItem* item = new QListWidgetItem("君不见黄河之水天上来,奔流到海不复回。");//将一行诗放入到listWidget控件中ui->listWidget->addItem(item);item->setTextAlignment(Qt::AlignHCenter);//参数:ananF1进入帮助手册,找参数类型//QStringList QList<QString>QStringList list;list<<"君不见高堂明镜悲白发,朝如青丝暮成雪"<<"人生得意须尽欢⑷,莫使金樽空对月"<<"天生我材必有用,千金散尽还复来";ui->listWidget->addItems(list);}Widget::~Widget(){delete ui;}

窗口效果显示:

0422P26 11QTreeWidget得数控件

新建项目,在ui中拖拽TreeWidget控件

代码:

Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//treeWidget控件得使用//设置水平头ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄介绍");QTreeWidgetItem * ad_item = new QTreeWidgetItem(QStringList() << "射手");QTreeWidgetItem * ci_item = new QTreeWidgetItem(QStringList() << "刺客");QTreeWidgetItem * tank_item = new QTreeWidgetItem(QStringList() << "坦克");//加载顶层得节点ui->treeWidget->addTopLevelItem(ad_item);ui->treeWidget->addTopLevelItem(tank_item);ui->treeWidget->addTopLevelItem(ci_item);//追加子节点QStringList hero_ad_1;hero_ad_1 << "艾希" <<"后排射手";QTreeWidgetItem *ad_1 =new QTreeWidgetItem(hero_ad_1);ad_item->addChild(ad_1);QStringList hero_ad_2;hero_ad_2 << "卡莉斯塔" <<"后排射手";QTreeWidgetItem *ad_2 =new QTreeWidgetItem(hero_ad_2);ad_item->addChild(ad_2);QStringList hero_tank_1;hero_tank_1 << "熔岩巨兽" <<"后排石头人辅助";QTreeWidgetItem *tank_1 =new QTreeWidgetItem(hero_tank_1);tank_item->addChild(tank_1);QStringList hero_tank_2;hero_tank_2 << "盖伦" <<"德玛西亚";QTreeWidgetItem *tank_2 =new QTreeWidgetItem(hero_tank_2);tank_item->addChild(tank_2);QStringList hero_ci_1;hero_ci_1 << "劫" <<"AD刺客";QTreeWidgetItem * ci_1 = new QTreeWidgetItem(hero_ci_1);ci_item->addChild(ci_1);}

窗口程序展示:

P27 12 QTablewidget控件

创建新项目,进入ui编辑,拖拽控件Table Widget

找到控件名称:TableWidget,编程一会用到

代码:

Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){
ui->setupUi(this);//TableWidget控件
//设置列数:3
ui->tableWidget->setColumnCount(3);//设置水平表头ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"英雄"<<"位置"<<"年龄");//设置行数:5ui->tableWidget->setRowCount(5);//设置正文//ui->tableWidget->setItem(0,0,new QTableWidgetItem("亚瑟"));QStringList name_list;name_list <<"亚瑟"<<"安琪拉"<<"后裔"<<"赵云"<<"李元芳";QList<QString> area_list;area_list <<"上路"<<"中路"<<"发育路"<<"打野"<<"打野";for(int i = 0;i < 5;i++){int col = 0;ui->tableWidget->setItem(i,col++,new QTableWidgetItem(name_list[i]));ui->tableWidget->setItem(i,col++,new QTableWidgetItem(area_list.at(i)));//int 转QStringui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+8)));}}

效果展示:

P28 13 其他控件介绍

代码:

Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//栈控件得使用//默认栈控件的定位ui->stackedWidget->setCurrentIndex(0);connect(ui->btn_tab,&QPushButton::clicked,[=](){ui->stackedWidget->setCurrentIndex(0);});//connect(ui->btn_scroll,&QPushButton::clicked,[=](){ui->stackedWidget->setCurrentIndex(1);});connect(ui->btn_tool,&QPushButton::clicked,[=](){ui->stackedWidget->setCurrentIndex(2);});//下拉框ui->comboBox->addItems(QStringList()<<"123"<<"456"<<"789");//利用Qlable显示图片ui->label->setPixmap(QPixmap(":/Image/road2.jpg"));//利用Qlable显示gif动图QMovie * eat_movie = new QMovie(":/Image/eat.gif");ui->label_gif->setMovie(eat_movie);//播放动图eat_movie->start();}

ui布局:

窗口效果:

【Qt学习】网课P23-P28 各种控件的使用相关推荐

  1. 吴恩达深度学习网课小结

    Coursera上吴恩达的深度学习网课,很适合那些想了解和学习深度学习的人来入门. 这个深度学习的专项网课共包含了五门课,包含了神经网络.卷积神经网络(CNN).循环神经网络(RNN).长短期记忆网络 ...

  2. vs2010 学习Silverlight学习笔记(8):使用用户控件

    概要: 这个类似于封装控件样式.不过封装的是整个或是多个控件罢了,然后用的时候就可以直接引用过来了. 创建用户控: 这个也很简单,不过有几个地方需要注意下.这个就不照抄了,咱们也自己写一个. 步骤: ...

  3. qt中QHBoxLayout或QVBoxLayout布局内控件的动态生成与显示

    ---恢复内容开始--- qt中QHBoxLayout或QVBoxLayout布局内控件的动态生成与显示 打个比方,我现在写个小例子,这个小例子是这样的,整个界面分为俩个部分,分为上半部分和下半部分, ...

  4. ASP.Net学习笔记002--ASP.Net服务端控件做了什么2

    ASP.Net学习笔记002--ASP.Net服务端控件做了什么2 以前写的课程都没有附上源码,很抱歉! 课程中的源码可以加qq索要:1606841559 技术交流qq1群:251572072 技术交 ...

  5. Qt 封装一个简单的LED(指示灯)控件

    Qt 封装一个简单的LED(指示灯)控件 1,效果~ 所以 这个简单的LED类可以自定义大小~ 可以点亮或熄灭,也可以闪烁

  6. java学习笔记(三):前端miniUI控件库入门

    java学习笔记(三):前端miniUI控件库入门 最近在一家公司实习学习,一上来就需要学习了解相关的前端内容--miniUI.而这个内容自己本身并没有了解学习过,上手也是遇到了不少的问题,于是想把自 ...

  7. PyQt5学习笔记(二) 文本控件及使用

    文章目录 写在前面 QLineEdit控件 回显模式(Echo Mode) 校验器(Validator) ASCII掩码 QTextEdit控件 其他不常用的一些文本控件 QSpinBox控件 QDo ...

  8. Flutter学习指南:UI布局和控件,作为Android开发者

    showDialog(                 // 第一个 context 是参数名,第二个 context 是 State 的成员变量                 context: c ...

  9. 《实用VC编程之玩转控件》第3课:Button按钮控件

    本文转载自:VC驿站 https://www.cctry.com/thread-297405-1-1.html 1.按钮控件的基本使用: 新建对话框工程,拖拽按钮控件,添加点击事件响应函数! a.双击 ...

  10. Android学习笔记26:图片切换控件ImageSwitcher的使用

    在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...

最新文章

  1. libc.so.6 is needed by mysql_libc.so.6(GLIBC_2.14)(64bit) is needed by…问题的解决办法
  2. mysql myisam 主从_MySQL的主从复制Replication之MyIsam和InnoDB数据复制发布
  3. Sqoop1使用手册
  4. Apache Flink 零基础入门(十二)Flink sink
  5. Windows文件扩展名大全,不断添加中
  6. Lock,LockFree,MemoryBarrier,ConcurrentCollection
  7. zookeeper 原理
  8. python外星人入侵游戏图片_外星人入侵,使用python开发的2D游戏
  9. Delphi中TMediaPlayer播放音乐出现no MCI device open的错误的解决方法
  10. Codeforces 988D Points and Powers of Two ( 思维 || 二的幂特点 )
  11. Julia: Array的确很强大
  12. 【MM32F5270开发板试用】基于MindSDK对接雨滴传感器
  13. 高清 GJB-5000B,2021最新版发布,软件能力成熟度模型
  14. FastStone Capture9.6
  15. 汽车驾驶 - 侧方停车
  16. HEVC帧内预测学习(一)CTU、CU、PU、TU单元划分的理解
  17. Maven打包 错误: 程序包org.junit不存在
  18. 高级数据结构——AVL树
  19. BAT之变:瘦死的骆驼比马大
  20. [codeforces 1341B] Nastya and Door 神奇的掐头去尾+前缀和

热门文章

  1. Design Principle
  2. OleDbParameter 在Access中的用法
  3. 什么是DNS(域名服务器)?(Powercert animated videos)
  4. 批处理set和if,goto共同使用
  5. windows bat (批处理)——IF详解
  6. 吕校长的经验 | 今天给VIP客户讲解公司展厅,如果是你会怎么讲
  7. Layer.tips
  8. Pytest 结合 Allure 生成测试报告
  9. 王者客服信息服务器,王者荣耀客服反馈在哪 王者荣耀客服反馈入口位置介绍...
  10. Ubuntu-打包解包命令