07_Qt登录窗口布局和常用控件

本文详细介绍了在Qt开发中如何使用widget进行登录窗口的布局,包括水平布局、垂直布局和网格布局,以及如何利用控件的弹簧特性优化界面效果。同时涵盖了常用控件如单选按钮、复选框、列表、树控件、TableWidget和StackedWidget等的实例应用。
摘要由CSDN通过智能技术生成

登录窗口布局

将控件放入widget控件中进行水平布局,就可按比例缩放
在这里插入图片描述
在这里插入图片描述
设置弹簧固定宽度,以及一些属性
在这里插入图片描述
在这里插入图片描述
调整对话框和widget的间隙
在这里插入图片描述
使得对话框输入时看不见内容
在这里插入图片描述

  • 布局管理器
    所谓 GUI 界面,归根结底,就是一堆组件的叠加。我们创建一个窗口,把按钮放上面,把图标放上面,这样就成了一个界面。在放置时,组件的位置尤其重要。我们必须要指定组件放在哪里,以便窗口能够按照我们需要的方式进行渲染。这就涉及到组件定位的机制。
    Qt 提供了两种组件定位机制:绝对定位和布局定位。
  • 绝对定位就是一种最原始的定位方法:给出这个组件的坐标和长宽值。
    这样,Qt 就知道该把组件放在哪里以及如何设置组件的大小。但是这样做带来的一个问题是,如果用户改变了窗口大小,比如点击最大化按钮或者使用鼠标拖动窗口边缘,采用绝对定位的组件是不会有任何响应的。这也很自然,因为你并没有告诉 Qt,在窗口变化时,组件是否要更新自己以及如何更新。或者,还有更简单的方法:禁止用户改变窗口大小。但这总不是长远之计。
  • 布局定位:你只要把组件放入某一种布局,布局由专门的布局管理器进行管理。当需要调整大小或者位置的时候,Qt 使用对应的布局管理器进行调整。
    布局定位完美的解决了使用绝对定位的缺陷。
    Qt 提供的布局中以下三种是我们最常用的:
  • QHBoxLayout:按照水平方向从左到右布局;
  • QVBoxLayout:按照竖直方向从上到下布局;
  • QGridLayout:在一个网格中进行布局,类似于 HTML 的 table;

系统提供的布局控件

在这里插入图片描述

利用widget做布局

第二种布局方式是利用控件里的widget来做布局,在Containers中
在这里插入图片描述
在widget中的控件可以进行水平、垂直、栅格布局等操作,比较灵活。
再布局的同时我们需要灵活运用弹簧的特性让我们的布局更加的美观,下面是一个登陆窗口,利用widget可以搭建出如下登陆界面:
在这里插入图片描述

常用控件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

    //设置单选按钮 男默认选中
    ui->man->setChecked(true);
    ui->marry->setChecked(true);
    //选中女后 打印信息
    connect(ui->worman,&QRadioButton::clicked,[=](){
   
        qDebug()<<"选了女的";
    });

    //多选按钮 2是选中 1是半选 0是未选中
    connect(ui->local,&QCheckBox::stateChanged,[=](int state){
   
        qDebug()<<state;
    });
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值