focusPolicy/setFocusPolicy(FocusPolicy),styleSheet
目录
focusPolicy/setFocusPolicy(FocusPolicy),styleSheet
综合案例
focusPolicy/setFocusPolicy(FocusPolicy),styleSheet
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//计算机的焦点就是鼠标或者键盘Tab键点击时所聚焦的界面/控件//focusPolicy 获取widget控件的focusPolicy,返回QT::FocusPolicy类对象//setFocusPolicy(FocusPolicy)设置widget的FocusPolicy//我们可以通过setFocusPolicy来设置当前获取焦点的方式,FocusPolicy是Qt::的枚举类型ui->lineEdit_2->setFocusPolicy(Qt::TabFocus); //仅允许tab获取焦点ui->lineEdit_3->setFocusPolicy(Qt::ClickFocus); //仅允许鼠标获取焦点ui->lineEdit_4->setFocusPolicy(Qt::StrongFocus); //默认值//styleSheet//Qt 的 styleSheet 就是 Qt 实现的 “CSS-like” 样式表机制,用来把界面画成自己想要的配色、字体、边框、圆角、渐变、甚至小动画,而不用重新写 C++ 代码派生控件。//它语法 90 % 和 W3C CSS2 相同,但加了 Qt 专用的 selector、伪状态、属性、盒子模型 规则。//通过setStyleSheet(QString(k:v))进行写入一堆属性,除了最后一个,其他每个kv结构后面都有加上;ui->label->setStyleSheet("background:black;color:green"); //
}Widget::~Widget()
{delete ui;
}
综合案例
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设计一个夜间模式和日间模式的通过按钮的转换功能}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_to_sun_clicked()
{this->setStyleSheet("background: #F0F0F0"); //也可以使用#16进制,RGB( ,,)的格式进行表示颜色ui->pushButton_to_sun->setStyleSheet("background: white; color: black");ui->pushButton_to_moon->setStyleSheet("background: white; color: black");ui->textEdit_yuanshen->setStyleSheet("background: white; color: black");
}void Widget::on_pushButton_to_moon_clicked()
{this->setStyleSheet("background: black");ui->pushButton_to_sun->setStyleSheet("background: black; color: white");ui->pushButton_to_moon->setStyleSheet("background: black; color: white");ui->textEdit_yuanshen->setStyleSheet("background: black; color: white");
}

