qt QGridLayout 簡單實驗1

1.概要

2.實驗

2.1 實驗1 簡單實驗+跨行

2.1.1 代碼

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();private:Ui::Widget *ui;
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"
#include <QGridLayout>
#include <QPushButton>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);// 創建一個QGridLayout對象QGridLayout *layout = new QGridLayout(this);// 創建幾個按鈕QPushButton *button1 = new QPushButton("Button 1");QPushButton *button2 = new QPushButton("Button 2");QPushButton *button3 = new QPushButton("Button 3");QPushButton *button4 = new QPushButton("Button 4");QPushButton *button5 = new QPushButton("Button 5");QPushButton *button6 = new QPushButton("Button 6");// 將按鈕添加到布局中layout->addWidget(button1, 0, 0); // 將button1添加到網格的第0行,第0列layout->addWidget(button2, 0, 1); // 將button2添加到網格的第0行,第1列layout->addWidget(button6, 0, 2); // 將button2添加到網格的第0行,第1列layout->addWidget(button3, 1, 0, 1, 3); // 將button3添加到網格的第1行,跨越第0列到第1列layout->addWidget(button4, 2, 0, 1, 1); // 將button4添加到網格的第2行,第0列layout->addWidget(button5, 2, 1); // 將button4添加到網格的第2行,第0列
}Widget::~Widget()
{delete ui;
}

2.1.2 運行結果

2.2 實驗2 一組控件實驗

2.2.1 代碼

#ifndef GRITLYOUTS_H
#define GRITLYOUTS_H#include <QWidget>namespace Ui {
class GritLyouts;
}class GritLyouts : public QWidget
{Q_OBJECTpublic:explicit GritLyouts(QWidget *parent = nullptr);~GritLyouts();private:Ui::GritLyouts *ui;
};#endif // GRITLYOUTS_H

?

#include "gritlyouts.h"
#include "ui_gritlyouts.h"
#include <QGridLayout>
#include <QPushButton>GritLyouts::GritLyouts(QWidget *parent): QWidget(parent), ui(new Ui::GritLyouts)
{ui->setupUi(this);// 創建一個QGridLayout對象QGridLayout *layout = new QGridLayout(this);for(int i=0;i<24;i++){QPushButton *button1 = new QPushButton("button_"+QString::number(i)+"");int hang = i/4;int lie = i%4;layout->addWidget(button1, hang, lie);}
}GritLyouts::~GritLyouts()
{delete ui;
}

2.2.2 運行結果

2.3 實驗的公共代碼

2.3.1 工程

QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsCONFIG += c++17# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0SOURCES += \gritlyouts.cpp \main.cpp \widget.cppHEADERS += \gritlyouts.h \widget.hFORMS += \gritlyouts.ui \widget.ui# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

2.3.2 代碼?

?

#include "widget.h"
#include "gritlyouts.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();//GritLyouts gl;//gl.show();return a.exec();
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/40804.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/40804.shtml
英文地址,請注明出處:http://en.pswp.cn/web/40804.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

STM32 - 內存分區與OTA

最近搞MCU&#xff0c;發現它與SOC之間存在諸多差異&#xff0c;不能沿用SOC上一些技術理論。本文以STM L4為例&#xff0c;總結了一些STM32 小白入門指南。 標題MCU沒有DDR&#xff1f; 是的。MCU并沒有DDR&#xff0c;而是讓代碼存儲在nor flash上&#xff0c;臨時變量和棧…

yolov5實例分割跑通以及C#讀取yolov5_Seg實例分割轉換onnx進行檢測部署

一、首先需要訓練yolov5_seg的模型&#xff0c;可以去網上學習&#xff0c;或者你直接用我的&#xff0c; 訓練環境和yolov5—7.0的環境一樣&#xff0c;你可以直接拷過來用。 yolov5_seg算法 鏈接&#xff1a;https://pan.baidu.com/s/1m-3lFWRHwg5t8MmIOKm4FA 提取碼&…

【MySQL】1.初識MySQL

初識MySQL 一.MySQL 安裝1.卸載已有的 MySQL2.獲取官方 yum 源3.安裝 MySQL4.登錄 MySQL5.配置 my.cnf 二.MySQL 數據庫基礎1.MySQL 是什么&#xff1f;2.服務器&#xff0c;數據庫和表3.mysqld 的層狀結構4.SQL 語句分類 一.MySQL 安裝 1.卸載已有的 MySQL //查詢是否有相關…

《Windows API每日一練》8.3 scrollbar控件

在第三章SYSMETS2.C實例中&#xff0c;我們是通過CreateWindow函數創建窗口的參數窗口樣式中添加垂直或水平滾動條。本節我們將講述作為子窗口控件的滾動條。 本節必須掌握的知識點&#xff1a; 滾動條類 滾動條控件和著色 8.3.1 滾動條類 ■窗口滾動條與滾動條控件的異同 …

Python常量與變量的終極指南:從基礎到進階的15個要點

今天&#xff0c;我們將一起揭開Python中最基本但也極其重要的概念——常量與變量的神秘面紗。別擔心&#xff0c;我會用最簡單直白的語言&#xff0c;讓你從入門到略有小成&#xff0c;一步步掌握這些核心知識。準備好你的筆記本&#xff0c;讓我們開始這場Python之旅吧&#…

在Linux環境下搭建Redis服務結合內網穿透實現通過GUI工具遠程管理數據庫

文章目錄 前言1. 安裝Docker步驟2. 使用docker拉取redis鏡像3. 啟動redis容器4. 本地連接測試4.1 安裝redis圖形化界面工具4.2 使用RDM連接測試 5. 公網遠程訪問本地redis5.1 內網穿透工具安裝5.2 創建遠程連接公網地址5.3 使用固定TCP地址遠程訪問 前言 本文主要介紹如何在Li…

mysql 9 新特新

mysql9新特性 新特性Audit Log NotesC API NotesCharacter Set SupportCompilation NotesComponent NotesConfiguration NotesData Dictionary NotesData Type NotesDeprecation and Removal NotesEvent Scheduler NotesJavaScript ProgramsOptimizer NotesPerformance Schema …

Spring中的事件監聽器使用學習

一、什么是Spring中的事件監聽機制&#xff1f; Spring框架中的事件監聽機制是一種設計模式&#xff0c;它允許你定義和觸發事件&#xff0c;同時允許其他組件監聽這些事件并在事件發生時作出響應。這種機制基于觀察者模式&#xff0c;提供了一種松耦合的方式來實現組件間的通信…

Linux 系統性能分析與故障排查:從入門到進階

Linux 系統性能分析與故障排查&#xff1a;從入門到進階 作為系統管理員或 IT 專業人員&#xff0c;掌握系統性能分析和故障排查技能至關重要。這些技能可以幫助你識別和解決系統性能問題&#xff0c;確保系統穩定運行。本文將介紹系統性能分析和故障排查的基本方法&#xff0…

CTF實戰:從入門到提升

CTF實戰&#xff1a;從入門到提升 &#x1f680;前言 沒有網絡安全就沒有國家安全&#xff0c;網絡安全不僅關系到國家整體信息安全&#xff0c;也關系到民生安全。近年來&#xff0c;隨著全國各行各業信息化的發展&#xff0c;網絡與信息安全得到了進一步重視&#xff0c;越…

XAML 框架橫向對比

多年來&#xff0c;基于 XAML 的 UI 框架有了很大的發展。下面的圖表很好地證明了這個觀點。XAML UI 框架的三大巨頭&#xff1a;Avalonia UI、Uno Platform 和 .NET MAUI 都支持跨平臺的應用。事實上&#xff0c;除了 Avalonia UI&#xff0c;對跨平臺 XAML 的需求是它們發展的…

【深度學習】圖形模型基礎(5):線性回歸模型第四部分:預測與貝葉斯推斷

1.引言 貝葉斯推斷超越了傳統估計方法&#xff0c;它包含三個關鍵步驟&#xff1a;結合數據和模型形成后驗分布&#xff0c;通過模擬傳播不確定性&#xff0c;以及利用先驗分布整合額外信息。本文將通過實際案例闡釋這些步驟&#xff0c;展示它們在預測和推斷中的挑戰和應用。…

Unity 使用AVProMovieCapture實現Game視圖屏幕錄制

內容將會持續更新&#xff0c;有錯誤的地方歡迎指正&#xff0c;謝謝! Unity 使用AVProMovieCapture實現Game視圖屏幕錄制 TechX 堅持將創新的科技帶給世界&#xff01; 擁有更好的學習體驗 —— 不斷努力&#xff0c;不斷進步&#xff0c;不斷探索 TechX —— 心探索、心…

【云計算】公有云、私有云、混合云、社區云、多云

公有云、私有云、混合云、社區云、多云 1.云計算的形態1.1 公有云1.2 私有云1.3 混合云1.4 社區云1.5 多云1.5.1 多云和混合云之間的關系1.5.2 多云的用途1.5.3 影子 IT 和多云1.5.4 優缺點 2.不同云形態的對比 1.云計算的形態 張三??在家做飯吃&#xff0c;這是 私有云&…

liunx上修改Firefox版本號

在Linux上修改Firefox的版本號并不直接推薦也不鼓勵&#xff0c;因為這可能會影響到瀏覽器的安全性、兼容性和自動更新功能。但如果你因為某些特殊測試場景確實需要修改其顯示的版本號&#xff08;請注意&#xff0c;這樣做可能會引發不可預料的問題&#xff09;&#xff0c;可…

【擴散模型】LCM LoRA:一個通用的Stable Diffusion加速模塊

潛在一致性模型&#xff1a;[2310.04378] Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference (arxiv.org) 原文&#xff1a;Paper page - Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference (…

ELK優化之Filebeat部署

目錄 1.安裝配置Nginx 2.安裝 Filebeat 3.設置 filebeat 的主配置文件 4.修改Logstash配置 5.啟動配置 6.kibana驗證 主機名ip地址主要軟件es01192.168.9.114ElasticSearches02192.168.9.115ElasticSearches03192.168.9.116ElasticSearch、Kibananginx01192.168.9.113ng…

【鎖】各種鎖的概念

解釋一下什么是樂觀鎖、悲觀鎖、自旋鎖、互斥鎖、讀寫鎖、排他鎖、共享鎖、統一鎖、分段鎖&#xff1f; 定義角度不同&#xff0c;通常把&#xff08;樂觀鎖、悲觀鎖&#xff09;、&#xff08;自旋鎖、互斥鎖&#xff09;、&#xff08;讀寫鎖、排他鎖、共享鎖&#xff09;、…

Redis---9---集群(cluster)

將新增的6387節點&#xff08;空槽號&#xff09;作為master節點加入原集群 Redis—9—集群&#xff08;cluster&#xff09; 是什么 定義 ? 由于數據量過大&#xff0c;單個Master復制集難以承擔&#xff0c;因此需要對多個復制集進行集群&#xff0c;形成水平擴展每個復…

Selenium 切換窗口

環境&#xff1a; Python 3.8 selenium3.141.0 urllib31.26.19說明&#xff1a; driver.current_window_handle # 返回當前窗口的句柄 driver.window_handles # 返回當前由driver啟動所有窗口句柄&#xff0c;是個列表 driver.switch_to.window(handle) # 根據 handle 切換窗口…