首页 > 其他分享 >QT常用总结(1)

QT常用总结(1)

时间:2023-08-01 16:03:31浏览次数:39  
标签:总结 pMenubar 常用 QT QLineEdit TabView1 设置 new Model

一、QLineEdit常用设置

QLineEdit *Edit1 = new QLineEdit;


1.设置QLineEdit为不可编辑的状态

Edit1->setenabled(false);//方式一

Edit1->SetReadOnly(true);//方式二


2.设置QLineEdit输入时提示输入范围

Edit1->setToolTip("输入范围为");


3.正则表达式限定QLineEdit的输入范围

QRegExp rx("(^(\\d|[1-9]\\d)(\\.\\d{1,2})?$)|(^100$)");

QRegExpValidator *pReg = new QRegExpValidator(rx, this);

Edit1->setValidator(pReg);


//感觉是设置输入的位数

ui->lineEdit->setValidator(new QIntValidator(0,100,this));


4.QLineEdit输入不同数据类型,以及读出时恢复原类型

int V1 = 20;

Edit1->setText(QString::number(V1));//整数转成字符串

Edit1->text().toInt();


二、常用的文件操作

1.设置文件的打开路径,默认文件名,打开方式:只读、只写、读写

QString filename = QFileDialog::getSaveFileName(this, " 另存为二进制文件" , " D:/RecorderByte.bin", "*.bin" );

QFile file(filename);//创建文件对象

bool tag = file.open(QIODevice::WriteOnly);//写内容到文件中

if(!tag)

   {

       QMessageBox::warning(this, "警告", "打开文件失败");

       qDebug()<<"打开文件失败";

       return;

   }

   QDataStream writeout(&file);//传入文件对象指针 //流方式写文件

   writeout.setByteOrder(QDataStream::LittleEndian);

   writeout.writeRawData((char *)data,16);

   file.close();

三、QTableView常用设置

注:表格视图控件需要和QStandardItemModel配合使用,这套框架是基于MVC设计模式设计的;

M(Model)是QStandardItemModel数据模型,不能单独显示出来;

V(view)是指QTableView视图,要来显示数据模型;

C(controllor)控制在Qt中被弱化,与View合并到一起;


1.创建视图对象、创建模型对象

QTableView *TabView1 = new QTableView;

QStandardItemModel *Model_1 = new QStandardItemModel;


2.常用设置

TabView1->setModel(Model_1);//设置表格的模式

Model_1->setColumnCount(3);//设置列数

Model_1->setHeaderData(0, Qt::Horizongtal, "姓名");//设置列字段名

Model_1->setHeaderData(1, Qt::Horizongtal, "年龄");

Model_1->setHeaderData(2, Qt::Horizongtal, "性别");

Model_1->setRowCount(3);//设置行数

Model_1->setHeaderData(0, Qt::Vertical, "记录一");//设置行字段名

Model_1->setHeaderData(1, Qt::Vertical, "记录二");

Model_1->setHeaderData(2, Qt::Vertical, "记录三");

Model_1->setItem(0, 0, new QStandardItem("张三"));

Model_1->setItem(0, 1, new QStandardItem("13"));

Model_1->setItem(0, 2, new QStandardItem("男"));

Model_1->removeRow(0);//移除第0行数据

Model_1->removeColumn(0);//移除第0列数据

TabView1->verticalHeader()->hide();//默认是显示行头的,也可选择隐藏

TabView1->setSelectionBehavior(QAbstarctItemView::SelectRows);//设置选中时为整行选中

TabView1->setEditTriggers(QAbstarctItemView::NoEditTriggers);//设置单元格为只读属性,不可编辑

TabView1->setAlternatingRowColors(true);//设置表格视图行颜色交替

TabView1->horizontalHeader()->setResizeMode(QHeaderView::Stretch);//设置列宽在可视界面自适应宽度


三、QMenuBar 菜单栏

QMenuBar pMenubar = new QMenuBar;

pMenubar->setStyleSheet("background-color:#B0C4DE");

QMenu *pMenuStart = pMenubar->addMenu(QStringLiteral("开始"));//添加菜单项

QMenu *pMenuOption = pMenubar->addMenu(QStringLiteral("选项"));

QMenu *pMenuEdit = pMenubar->addMenu(QStringLiteral("编辑"));

QMenu *pMenuTools = pMenubar->addMenu(QStringLiteral("工具"));

QMenu *pMenuView = pMenubar->addMenu(QStringLiteral("视图"));

QMenu *pMenuAbout = pMenubar->addMenu(QStringLiteral("关于"));

标签:总结,pMenubar,常用,QT,QLineEdit,TabView1,设置,new,Model
From: https://blog.51cto.com/u_15515702/6923358

相关文章

  • SQL总结-MySQL索引使用和优化技巧
    本文将全面介绍MySQL索引的使用技巧,并提供多种优化索引的方法,帮助读者提高数据库查询性能。MySQL索引基础知识索引的工作原理索引就像书的目录,可以帮助MySQL快速定位数据,从而加速查询。索引类型MySQL支持多种索引类型:B树索引(B-Tree):最常见的索引类型,可以对值进行排......
  • Qt调用动态库的三种方式(linux)
     本文章主要记录Qt在linux电脑上调用so库的三种调用方式方式一:静态加载so库方式二:动态加载so库(QLibrary)方式三:动态加载so库(dlopen) 其他:封装的so库叫做:libsoowCapture.so,这个so库又依赖了其他的so库,我是把所有的so库放在lib文件夹里面。库文件+目录结构如下图:   ......
  • iTOP-i.MX6ULL开发板Qt 串口编程
    本章内容对应视频讲解链接(在线观看):QT上位机开发之串口助手(上)→B站搜索标题→【北京迅为】嵌入式学习之QT学习篇QT上位机开发之串口助手(下)→B站搜索标题→【北京迅为】嵌入式学习之QT学习篇本节我们使用Qt来编写一个简单的上位机。实验介绍:组装ui界面,使用Qt提供的串口类......
  • Linux常用耗资源命令汇总
    在Linux中,以下命令可能在处理大量数据或复杂操作时比较消耗资源。一般来说,涉及大量数据处理、计算或者I/O操作的命令会比较耗费系统资源。​注意:所有命令资源消耗都是相对的,基于文件的处理量来展现find命令通常会比较消耗资源,因为它需要遍历整个文件系统来查找文件......
  • Vue常用经典开源项目汇总参考-海量
    Vue常用经典开源项目汇总参考-海量是什么?(读音 /vjuː/, 类似于 view)是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采......
  • JS常用正则表达式
    1.文本框输入验证<!--限制文本框只能输入正数--><inputtype="text"οnkeyup="this.value=this.value.replace(/\D/g,'')"/><!--限制文本框只能输入正数、小数--><inputtype="text"οnkeyup="this.value=this.value.replace(/[^......
  • Qt-day02
     调用重载的信号  #ifndefMAINWIDGET_H#defineMAINWIDGET_H#include<QWidget>#include<QPushButton>#include<QDebug>#include"subwidget.h"classMainWidget:publicQWidget{Q_OBJECTpublic:MainWidget(QWidget*par......
  • 测试 | pycharm 常用操作
    1、增加自动导入功能你也可以通过设置来启用PyCharm自动导入功能。在PyCharm的菜单中选择"File"->“Settings”,进入设置界面。在左侧的面板中找到"Editor"->“General”->"AutoImport"选项,确保"Addunambiguousimportsonthefly"和"Optimizeimportsonthefly&quo......
  • 【16.0】DRF大总结
    【一】DRF入门规范前后端开发模式:混合:前后端代码交织在一起,同一份代码中既包含前端逻辑又包含后端逻辑。这种模式通常在小型项目或者简单的页面中使用,便于快速开发和维护。分离:前后端代码分离开发,前端专注于用户界面设计和交互逻辑,后端则负责数据处理和业务逻辑。这......
  • 【DRF笔记链接总结】
    【DRF笔记链接总结】【一】Web应用模式/API接口测试/Postman【1.0】DRF之引入-Chimengmeng-博客园(cnblogs.com)【二】Restful规范【2.0】DRF之Restful规范-Chimengmeng-博客园(cnblogs.com)【三】序列化/反序列化-DRF介绍-CBV源码分析-APIView源码分析【3.0】DRF......