QT
DayDay_Upppp
这个作者很懒,什么都没留下…
展开
-
[Qt]在不开启事件循环的线程中使用QTimer
引入QTimer是Qt自带的定时器类,QTimer运行时是依赖于事件循环的,简单来说,在一个不开启事件循环(未调用exec() )的线程中,QTimer是无法使用的。通过分析Qt源码可发现,调用QTimer::start()后仅仅是在系统的定时器向量表中添加了一个定时器对象,但定时器并没有真正开启。定时器的开启需要通过processEvent()开始的一系列调用后才会真正得开启,这个过程中会处理定...转载 2018-03-30 14:58:47 · 1561 阅读 · 0 评论 -
QLineEdit
QLineEdit是一个单行文本输入框。QLineEdit允许用户输入和编辑单行纯文本,提供了很多有用的编辑功能,包括:撤消和重做、剪切和粘贴、以及拖放(见setDragEnabled())通过改变输入框的echoMode(),同时也可以设置为一个“只写”字段,用于输入密码等。文本的长度可以被限制为maxLength(),可以使用一个validator()或inputMask()来任意...转载 2019-01-17 10:33:40 · 7602 阅读 · 0 评论 -
按钮三态图
Btn_Min->setStyleSheet("QPushButton{border-image: url(:/new/prefix2/Pic/JPG/minback.png)0 60 0 0;}" "QPushButton:hover{border-image: url(:/new/prefix2/Pic/JPG/minbac...原创 2019-01-17 13:57:50 · 1565 阅读 · 0 评论 -
Qt实现LineEdit里添加图片
1. QAction *searchAction = new QAction(ui.LineEdit);searchAction->setIcon(QIcon(":/resource/query.png"));ui.LineEdit->addAction(searchAction,QLineEdit::TrailingPosition);//QLineEdit::Leadi...转载 2019-01-17 15:44:27 · 4888 阅读 · 1 评论 -
去掉标题栏,设置透明,居中
1.去掉标题栏this->setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏2.界面居中#include <QDesktopWidget>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w...原创 2019-01-09 12:55:20 · 264 阅读 · 0 评论 -
QT之界面实现技巧
一、主界面1、窗口 最小化 最大化 关闭按钮、显示状态自定义 setWindowFlags(Qt::CustomizeWindowHint); setWindowFlags(Qt::WindowCloseButtonHint); //只要关闭按钮 setWindowFlags(Qt::WindowFlags type) Qt::FrameWindowH...原创 2019-01-09 13:25:14 · 439 阅读 · 0 评论 -
Qt之自定义界面添加最小化、最大化和关闭按钮
#include "dialog.h"#include<QToolButton>#include<QPixmap>#include<QStyle>#include<QApplication>Dialog::Dialog(QWidget *parent) : QDialog(parent){ int wide = width()...原创 2019-01-09 13:56:00 · 3395 阅读 · 0 评论 -
Qt 获取当前时间
1、获取带日期的时间,使用QDateTime类QDateTime current_date_time =QDateTime::currentDateTime();QString current_date =current_date_time.toString("yyyy.MM.dd hh:mm:ss.zzz ddd");2、只需要时间,不需要日期,也可使用QTime类QTime ...原创 2019-01-09 16:58:40 · 4945 阅读 · 0 评论 -
QFont
使用qApp->setFont(QFont())可以设置默认文字属性,但是对于带有文字属性编辑功能的Qt控件(QTextEdit、QTextBrowser),使用setFont()不会“完全”生效。还有一个字体设置对话框类:QFontDialog。使用getFont手动设置文字属性://定义bool型输出变量bool enable = false;//调用文字属性设置变量,传输...原创 2019-01-15 14:36:24 · 1652 阅读 · 0 评论 -
ComboBox
1.设为可编辑ID_Login_ComboBox->setEditable(true);2.ComboBox本身记录着一个LineEditID_Login_ComboBox->lineEdit()->setText("111");原创 2019-01-15 16:52:57 · 609 阅读 · 0 评论 -
QStringLiteral QLatin1String
QStringLiteral 是Qt5中新引入的一个用来从“字符串常量”创建QString对象的宏ui->passwordEdit->setPlaceholderText(QStringLiteral("密码"));QLatin1String类对US-ASCII/Latin-1编码的字符串进行了简单封装,可理解为关于const char*的一个浅封装。if (str ...转载 2019-01-17 09:56:57 · 749 阅读 · 0 评论 -
QTableWidget导出为Excel格式
首先在 .pro文件中增加一个配置文件,如下:1 CONFIG += qaxcontainer #导出excel第二步,在实现导出功能方法的 .cpp 文件中引入如下类:1 #include <QTableWidget>2 #include <QFileDialog>3 #include <QDesktopServices>4 #inclu...原创 2018-08-06 15:04:10 · 2665 阅读 · 2 评论 -
QTableWidget导出为Excel格式
Slot_ExportData(){ QString filepath = QFileDialog::getSaveFileName(this, tr("Save as..."), QString(), tr("EXCEL files (*.xls);;HTML-Files (*.txt);;")); if (filepath != "") { int row = m_pT...原创 2018-08-06 14:03:26 · 626 阅读 · 0 评论 -
Qt 16进制字符串跟QByteArray互转
/*将16进制字符串转换为对应的字节序列*/QByteArray MainWindow::HexStringToByteArray(QString HexString){ bool ok; QByteArray ret; HexString = HexString.trimmed(); HexString = HexString.simplified(); ...转载 2018-06-26 10:22:49 · 5800 阅读 · 0 评论 -
Qt中 QString 和int,double,float, char等的“相互”转换
Qt中 int ,float ,double转换为QString有两种方法1.使用QString::number();如:long a = 63; QString s = QString::number(a, 10); // s == "63" QString t = QString::number(a, 16).toUpper(); // t == "3F...原创 2018-06-26 10:37:25 · 585 阅读 · 0 评论 -
滑动条之QSlider
//mydialog.h #ifndef MYDIALOG_H #define MYDIALOG_H #include <QDialog> class QLineEdit; class QSlider; class MyDialog : public QDialog { Q_OBJECT public: explicit MyDialog...原创 2018-06-26 11:23:07 · 454 阅读 · 0 评论 -
BYTE转Qstring
BYTE转Qstring:先将BYTE转成string,再将string转成Qstring.BYTE转string://1.QString转换Stringstring s = qstr.toStdString();//2.String转换QStringQString qstr2 = QString::fromStdString(s);string转Qstringstring str;...原创 2018-06-20 10:36:50 · 3605 阅读 · 0 评论 -
Qslider样式
QSlider::groove:horizontal {border: 1px solid #bbb;background: white;height: 10px;border-radius: 4px;}QSlider::sub-page:horizontal {background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop:...原创 2018-07-11 09:52:03 · 1396 阅读 · 0 评论 -
Qt中漂亮的几款QSS
/* === Shared === */QStackedWidget, QLabel, QPushButton, QRadioButton, QCheckBox, QGroupBox, QStatusBar, QToolButton, QComboBox, QDialog { background-color: #222222; color: #BBBBBB; font...原创 2018-07-11 11:14:51 · 1432 阅读 · 0 评论 -
Qt StyleSheet样式表实例
在涉及到Qt 美工的时候首先需要掌握CSS 级联样式表。下面将通过几个例子来介绍一下怎样使用Qt中的部件类型设计。自定义的前台背景与后台背景的颜色:如果需要一个文本编辑器的背景变为黄色, 下面是代码行:qApp->setStyleSheet("QLineEdit { background-color: yellow }");针对一个对话框的内容中使用QLineEdit以及QLineEdit的...转载 2018-07-11 14:11:53 · 445 阅读 · 0 评论 -
QTableWidget取消点击一个item时出现的虚线框,改变选中行的颜色
table->setFocusPolicy(Qt::NoFocus);或者是table->viewport()->setFocusPolicy(Qt::NoFocus); 不过这样的话,无法使用键盘控制table了.改变选中行的颜色:ui->Tablewidget->setStyleSheet("QTableWidget::item:sele...原创 2018-08-06 10:33:05 · 4591 阅读 · 0 评论 -
setPlaceholderText
1.默认提示 setPlaceholderTextui->lineEdit->setPlaceholderText("hello furong");QTextEdit 和 QLineEdit 都有 placeholderText 属性,即在输入内容之前,给予用户一些提示信息。但是其二者该属性对于不同输入法有不同的表现。具体表现在:1、QLineEdit 当输入内容...原创 2019-01-16 10:25:50 · 4407 阅读 · 0 评论