QT 的基础控件的使用

Layouts 布局控件的使用

Spacer 控件的使用

 

button 控件的使用

 

pushbutton 的使用

setIcon(const QIcon &)  //设置按钮的小图标
setIconSize(const QSize &)  //设置按钮的小图标大小 
    
  
setEnabled(bool)  //设置按钮是否能点击  
    
    
按钮的信号: 
 
void clicked(bool checked = false)  单击
void pressed()    按下
void released()   松开
void toggled(bool checked)  状态切换

 

QToolButton 的使用
QToolButton 
============
QToolButton 

//设置工具按钮的菜单 
void setMenu(QMenu *menu)
======================    
    
 QMenu 类的使用  
    QMenu(const QString &title, QWidget *parent = nullptr)


QAction *addAction(const QString &text) //添加菜单
QAction *addAction(const QIcon &icon, const QString &text)
==============

 //clicked
//显示菜单  
 ui->toolButton->showMenu();

//选择的菜单信号 
void triggered(QAction *action)
    

例子:

//设置菜单
     ui->toolButton->setText("菜单栏");

     QMenu *m =  new  QMenu("我的菜单",ui->toolButton);

     //往菜单中添加内容
     m->addAction("辣椒");
     m->addAction("鸡蛋");
     m->addAction("番薯");

     ui->toolButton->setMenu(m);

 

 

item widget 视图的使用

listWidget 的使用
QListWidget Class
Header:
#include <QListWidget> 
qmake:
QT += widgets

    
//添加列表项信息 
void addItem(const QString &label)
void addItem(QListWidgetItem *item)
void addItems(const QStringList &labels)
    
//在第几行插入  
void insertItem(int row, const QString &label)
    
 //取第几行的信息 
QListWidgetItem *item(int row) const
    
 //去除第几行   
QListWidgetItem *takeItem(int row)
    

 选择信号:
    
void currentRowChanged(int currentRow)  //选择第几行信号  

void itemClicked(QListWidgetItem *item) //点击信号 
void itemDoubleClicked(QListWidgetItem *item)//双击信号  

    
    
    
-------------------------------------------------------------
QListWidgetItem 类的使用: 
    

QListWidgetItem(const QString &text);
QListWidgetItem(const QIcon &icon, const QString &text);
treeWidget 的使用

1.添加列信息

2.添加项目信息  

获取项目中的信息

//双击信号  
void itemDoubleClicked(QTreeWidgetItem *item, int column)


//取出用户选择的数据 
QString msg  = item->text(column);  //根据行号取出数据

qDebug() <<  column;

 

tableWidget 的使用

1.添加列的信息

2.添加行的信息  

设置和获取表格中的信息

//设置第几行第几列的 信息   
void setItem(int row, int column, QTableWidgetItem *item)
QTableWidgetItem 类的构造函数: 
    QTableWidgetItem(const QString &text); 

例子: 设置第0行第0列的学生信息 
   setItem(0,0,new QTableWidgetItem("小明"));
 //设置第0 行 第1列的数据信息 
 ui->tableWidget->setItem(0,1,new QTableWidgetItem("178"));



//获取用户选择的内容 
//信号  
void cellDoubleClicked(int row, int column)  //取出用户点击的行与列
void itemDoubleClicked(QTableWidgetItem *item) //取出点击的item 

 

contain box 的使用

toolBox 的使用

 

tabWidget 的使用

MDI area的使用

在 Qt Designer 中,QMdiArea(Multiple Document Interface Area,多文档界面区域)是一个用于实现多文档界面(MDI)的部件。MDI 允许在一个主窗口中同时显示多个子窗口,每个子窗口可以独立地进行操作,但共享相同的菜单栏、工具栏和其他资源。

QMdiArea 的主要用途包括:

  1. 文档管理:在一个应用程序中管理多个打开的文档,每个文档都有自己的子窗口。这对于文字处理器、图像编辑器等应用程序特别有用,因为用户可以同时查看和编辑多个文件。

  2. 空间组织QMdiArea 提供了一种组织界面的方式,允许用户通过堆叠或平铺子窗口来管理屏幕空间。

  3. 资源共享:所有的子窗口可以共享相同的菜单、工具栏和其他界面元素,这有助于减少应用程序的资源消耗和提高用户体验的一致性。

  4. 状态同步:在 MDI 界面中,可以更容易地实现状态同步,比如当一个子窗口被选中时,主窗口的菜单和工具栏可以反映当前活动文档的状态。

  5. 灵活性:用户可以自由地移动、缩放和组织子窗口,甚至可以将子窗口从 QMdiArea 中分离出来成为独立的浮动窗口,也可以将其重新拖回 MDI 区域。

int i=1;
void MainWindow::on_pushButton_clicked()
{
    // 创建一个新的QMdiSubWindow
    QMdiSubWindow *subWindow = new QMdiSubWindow(ui->mdiArea);

    // 创建一个QWidget,用于作为QMdiSubWindow的内容
    QWidget *widget = new QWidget(subWindow);

    widget->setWindowTitle("窗口"+QString::number(i++));
    QVBoxLayout *layout = new QVBoxLayout(widget);
    QTextEdit *textEdit = new QTextEdit(widget);
    layout->addWidget(textEdit);

    // 设置QMdiSubWindow的Widget
    subWindow->setWidget(widget);

    // 将QMdiSubWindow添加到QMdiArea中
    ui->mdiArea->addSubWindow(subWindow);

    // 显示子窗口
    subWindow->show();
}

 

dock widget的使用

在Qt Designer中,QDockWidget是一种特殊的容器控件,用于创建可以在主窗口(QMainWindow)内停靠和浮动的子窗口。这些停靠窗口通常用于显示辅助信息、工具条、属性面板等,可以被用户拖动并固定在主窗口的四周或独立悬浮在桌面上

QAxwidget的使用

QAxWidget 类是 Qt 中用于嵌入 ActiveX 控件的一个控件。它继承自 QWidget,并且提供了与 COM (Component Object Model) 对象交互的能力。QAxWidget 主要用于在 Qt 应用程序中集成非 Qt 的组件,比如 Microsoft Office 组件、Internet Explorer 或者其他任何提供 ActiveX 接口的软件。

使用场景:

  • 嵌入 Internet Explorer 控件来显示网页。

  • 使用 Microsoft Office 的 ActiveX 控件(如 Word 或 Excel)来编辑文档。

  • 集成其他非 Qt 开发的控件或组件。

实现:

 

#include <QAxWidget>

    QAxWidget *ieWidget = new QAxWidget("InternetExplorer.Application", this);

    // 如果你在Qt Designer中没有设置control属性,你可以在这里设置:
    ieWidget->setControl(QString("InternetExplorer.Application"));

    // 设置IE控件的大小和位置
    ieWidget->resize(800, 600);
    ieWidget->move(100, 100);

    // 显示IE控件
    ieWidget->show();

    // 导航到网页
    ieWidget->setProperty("Visible", true);
    ieWidget->dynamicCall("Navigate(const QString&)", "http://www.baidu.com");

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>