Qt - 控件和布局

这篇具有很好参考价值的文章主要介绍了Qt - 控件和布局。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


https://www.bilibili.com/video/BV1g4411H78N?p=6


添加按钮 QPushButton

添加控件到窗口,需要添加内容到 mywidget.cpp

#include "mywidget.h"
#include <QPushButton> //按钮控件的头文件
#include "mypushbutton.h"
#include <QDebug>
// 命名规范
// 类名 首字母大写,单词和单词之间首字母大写
// 函数名 变量名称 首字母小写,单词和单词之间首字母大写
 

myWidget::myWidget(QWidget *parent)
    : QWidget(parent)
{
    //创建一个按钮
    QPushButton * btn = new QPushButton;
    //btn->show(); //show以顶层方式弹出窗口控件
    //让btn对象 依赖在 myWidget窗口中
    btn->setParent(this);

    //显示文本
    btn->setText("第一个按钮");
 
    //创建第二个按钮 按照控件的大小创建窗口
    QPushButton * btn2 = new QPushButton("第二个按钮",this);
    
    //移动btn2按钮
    btn2->move(100,100);
    
    //按钮可不可以 重新制定大小 可以!
    btn2->resize(50,50);
    
    //重置窗口大小
    resize(600,400);
    
    //设置固定窗口大小
    setFixedSize(600,400);
    
    //设置窗口标题
    setWindowTitle("第一个窗口");
  
    //创建一个自己的按钮对象
    MyPushButton * myBtn = new MyPushButton;
    myBtn->setText("我自己的按钮");
    
    myBtn->move(200,0);
    myBtn->setParent(this); //设置到对象树中
 
    //需求  点击我的按钮 关闭窗口
    //参数1  信号的发送者 参数2  发送的信号(函数的地址) 参数3  信号的接受者 参数4  处理的槽函数
    //connect( myBtn, &MyPushButton::clicked, this, &myWidget::close  );
    connect( myBtn, &QPushButton::clicked, this, &QWidget::close  );
}

myWidget::~myWidget()
{
    qDebug() << "myWidget的析构调用";
}
 

按钮控件常用API

  • 创建 QPushButton * btn = new QPushButton
  • 设置父亲 setParent(this)
  • 设置文本 setText("文字")
  • 设置位置 move(宽,高)

  • 重新指定窗口大小 resize
  • 设置窗口标题 setWindowTitle
  • 设置窗口固定大小 setFixedSize

自定义控件

想自定义按钮继承自QPushButton

选项中 没有这个类,可以选择它的父类 QWidget,然后修改文件。

#ifndef MYPUSHBUTTON_H
#define MYPUSHBUTTON_H

#include <QPushButton>

class MyPushButton : public QPushButton
{
    Q_OBJECT
public:
    explicit MyPushButton(QWidget *parent = 0);

    ~MyPushButton();  // 申明析构函数

signals:

public slots:
};

#endif // MYPUSHBUTTON_H
#include "mypushbutton.h"
#include <QDebug>

MyPushButton::MyPushButton(QWidget *parent) : QPushButton(parent)
{
    qDebug() << "我的按钮类 构造调用";
}

MyPushButton::~MyPushButton()
{
    qDebug() << "我的按钮类 析构";
}

对象树

当创建的对象在堆区时候,如果指定的父亲是QObject派生下来的类或者QObject子类派生下来的类,可以不用管理释放的操作,将对象会放入到对象树中。

这种机制 这一定程度上简化了内存回收机制。


坐标系

  • (0,0) 在左上角。
  • x以右为正方向
  • y以下为正方向

伊织 2021-02-04 07:46文章来源地址https://www.toymoban.com/news/detail-604747.html

到了这里,关于Qt - 控件和布局的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt - 控件和布局

    https://www.bilibili.com/video/BV1g4411H78N?p=6 添加控件到窗口,需要添加内容到 mywidget.cpp 按钮控件常用API 创建 QPushButton * btn = new QPushButton 设置父亲 setParent(this) 设置文本 setText(\\\"文字\\\") 设置位置 move(宽,高) 重新指定窗口大小 resize 设置窗口标题 setWindowTitle 设置窗口固定大小 setFixed

    2024年02月16日
    浏览(45)
  • Qt使用代码放置控件并布局

            上一章中我们从头一步一步地新建项目并运行了窗口,本章就正式踏入Qt界面编程之路。在本章节,我们先用代码编写界面,进行简单的控件放置,然后用代码进行布局;之后使用Qt Designer进行控件放置和界面布局,这使得复杂界面的设计变得简单起来。      

    2024年02月07日
    浏览(44)
  • Qt鼠标拖动控件交换布局位置

    方法很简单,交换鼠标起点控件指针和鼠标落点控件指针的值,然后重新布局 Qt鼠标拖动控件交换布局位置 源文件 头文件 下面是只交换控件显示的内容: 添加鼠标贴图,跟随鼠标移动: 一种实现:重写void paintEvent(QPaintEvent *event);方法 另一种实现:

    2024年02月11日
    浏览(39)
  • QT基础入门【布局篇】消除控件之间的间隔

    layoutLeftMargin: layout内的布局距离边框左端的距离。 layoutTopMargin: layout内的布局距离边框顶端的距离。 layoutRightMargin: layout内的布局距离边框右端的距离。 layoutBottomMargin: layout内的布局距离边框底端的距离。 layoutHorizontalSpacing: layout内的水平方向内的对象(包括控件和低一级布局

    2024年01月19日
    浏览(39)
  • C++ Qt 学习(二):常用控件使用与界面布局

    ui 设计器设计界面很方便,为什么还要手写代码? 更好的控制布局 更好的设置 qss 代码复用 完全不会写 Qt 布局,很麻烦,怎么学会手写布局? 看 Qt 自己怎么写 改良 Qt 的布局写法 1.1 水平布局 addWidget() 在布局里添加一个控件 addLayout() 在布局里添加子布局 setMargin() 设置水平

    2024年02月06日
    浏览(55)
  • Qt之格栅布局(QGridLayout)控件填满整个单元格

    Qt专栏: 目录 1.现象1 2.解决方案 3.现象2 4.解决方案 5.总结         今天在用QGridLayout布局的时候,添加到布局的QWidget有文本框、标签、组合框和按钮等等,布局两列,通过下面的方式添加进去的: 发现在窗口拉伸的时候,pEdit 不会填满第0行1列的位置,右边有空隙。    

    2024年04月15日
    浏览(82)
  • Qt Designer 控件箱中的控件介绍及布局比列分配

    控件箱介绍                 Qt Designer的控件箱(Widget Box)包含了各种常用的控件,用户可以通过拖放的方式将这些控件添加到窗体设计器中,用于构建用户界面。以下是一些常见控件箱中的控件及其功能的讲解: 1. 基本控件 : 标签(Label) :用于显示文本或图像。

    2024年04月13日
    浏览(40)
  • QT自定义优雅的表单控件,简单实现设置界面布局

    FormView.h FormView.cpp 核心函数 函数 变量 功能 addEditableItem title: 输入框前面的提示文字,同时作为该控件的标识符 place_holder: 输入框中的提示文字 在表单中插入一个可填写项 addCheckableItem title: 不显示在UI中,仅作为该控件的标识符 content: 勾选框后面的内容 init_status: 勾选框的初

    2024年02月11日
    浏览(47)
  • 开源Qt Ribbon控件——SARibbon的布局思路及介绍

    原文链接:https://blog.csdn.net/czyt1988/article/details/113811620 https://devpress.csdn.net/gitcode/6412b1fe986c660f3cf9294a.html?spm=1001.2101.3001.6650.4utm_medium=distribute.pc_relevant.none-task-blog-2 default CTRLIST activity-4-108312948-blog-126431338.235^v31^pc_relevant_default_base3depth_1-utm_source=distribute.pc_relevant.none-task-blog-2 defa

    2024年01月25日
    浏览(36)
  • 【QT】一 设置布局后,控件大小会自动变化,如何设置想要的

    目录 1. 设置好控件大小 2. 设置布局  3. 设置layout  给一个QWidget控件内部设置布局后,原来内部的控件大小变小了,如何解决?           把最小值设置好。         选择整体,选择布局方式,这里为水平布局。 你会发现,可能显示不全。 选择整体,属性拉到最下面,

    2024年02月11日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包