QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]

QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]关系图垂直布局:QVBoxLayout 先来一两代码:QWidget*widget=newQWidget();QVBoxLayout*vBoxLayout=newQVBoxLayout();QLabel*label=newQLabel(“hello”);QPushButton*pushButton=newQPushButton(“hi”);vBoxLayout->addWidget(label);vBoxLayout->addWid…

大家好,又见面了,我是你们的朋友全栈君。

QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]

关系图

  • 垂直布局:QVBoxLayout
    先来一两代码:

 

QWidget *widget = new QWidget();
QVBoxLayout * vBoxLayout = new QVBoxLayout();
QLabel *label = new QLabel("hello");
QPushButton *pushButton = new QPushButton("hi");
vBoxLayout->addWidget(label);
vBoxLayout->addWidget(pushButton);
widget->setLayout(vBoxLayout);
widget->show();

效果:

 

QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]

QVBoxLayout

  • 水平布局:QHBoxLayout
    一样:

 

QWidget *widget = new QWidget();
QHBoxLayout * hBoxLayout = new QHBoxLayout();
QLabel *label = new QLabel("hello");
QPushButton *pushButton = new QPushButton("hi");
hBoxLayout->addWidget(label);
hBoxLayout->addWidget(pushButton);
widget->setLayout(hBoxLayout);
widget->show();

QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]

QHBoxLayout

  • QHBoxLayout嵌套QVBoxLayout

 

QWidget *widget = new QWidget();
QHBoxLayout * hBoxLayout = new QHBoxLayout();
QVBoxLayout * vBoxLayout = new QVBoxLayout();
QLabel *label_text = new QLabel("Chengdu 1 – 3 Day Weather Forecast Summary");
QLabel *label_picture = new QLabel();
label_picture->setPixmap(QPixmap(":/weather").scaled(32,32, Qt::KeepAspectRatioByExpanding));
QPushButton *pushButton = new QPushButton("more");
vBoxLayout->addWidget(label_text);
vBoxLayout->addWidget(pushButton);
hBoxLayout->addWidget(label_picture);
hBoxLayout->addLayout(vBoxLayout);
widget->setLayout(hBoxLayout);
widget->show();

QT布局:QVBoxLayout/QHBoxLayout[通俗易懂]

QHBoxLayout嵌套QVBoxLayout

  • 总结
    1.向布局添加一个Widget:
    void QBoxLayout::addWidget(QWidget *widget, int stretch = 0, Qt::Alignment alignment = Qt::Alignment())
    2.向布局再添加一个布局
    void QBoxLayout::addLayout(QLayout *layout, int stretch = 0)�
    3.最后,使用它来确定Widget的布局
    void QWidget::setLayout(QLayout *layout)

作者:静_谷
链接:https://www.jianshu.com/p/938301a4d54e
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151650.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java getrealpath_关于getRealPath[通俗易懂]

    java getrealpath_关于getRealPath[通俗易懂]1.关于request.getRealPath的出错问题:Stringfilename=request.getRealPath(filename)//出了错——————-错误信息:ThemethodgetRealPath(String)fromthetypeServletRequestisdeprecated解决:资料来源:http://bbs…

    2022年9月19日
    3
  • arraylist遍历 并删除_js遍历list对象

    arraylist遍历 并删除_js遍历list对象//第一种遍历 ArrayList 对象的方法foreach(object o in al){Console.Write(o.ToString()+” “);}//第二种遍历 ArrayList 对象的方法IEnumerator ie=al.GetEnumerator();while(ie.MoveNext()){Console.Write(ie.Curret.ToString()+” “);

    2022年9月29日
    2
  • laravel 自定义分页样式「建议收藏」

    laravel 自定义分页样式「建议收藏」以laravel的默认表users表为例,插入100条数据$arr=[];for($i=0;$i<100;$i++){$arr[]=[‘name’=>’NAME_’.$i,’email’=>”email@{$i}.com”,’password’=>$i,’created_at’=>date(‘Y-m-dH:i:s’),’updated_…

    2022年7月17日
    14
  • python win32api messagebox_如何在Python中使用Win32 API?

    python win32api messagebox_如何在Python中使用Win32 API?PyWin32是必经之路-但是如何使用它呢?一种方法是从遇到的具体问题开始并尝试解决它。PyWin32提供了许多Win32API函数的绑定,您确实必须首先选择一个特定的目标。在我的Python2.5安装中(在Windows上为ActiveState),win32软件包具有一个Demos文件夹,其中包含该库各个部分的示例代码。例如,这是CopyFileEx.py:importwin32file…

    2022年8月31日
    4
  • Xml加载出错

    Xml加载出错在加载xml文件的时候xmlDoc.LoadXML()可能会出现这样的错误XmlException: Text node cannot appear in this state.Line1,position1. Mono.Xml2.XmlTextReader.ReadText(BooleannotWhitespace) Mono.Xml2.XmlTextReader.ReadConte…

    2022年7月26日
    38
  • LRC格式转换

    LRC格式转换[code="java"]importjava.io.BufferedReader;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.Co…

    2025年8月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号