原文:
http://blog.csdn.net/c_spark/article/details/4136823
Qt中在按钮上显示字符'&'
1、通常使用含字符'&'的字符串为按钮的显示名称,如果设置按钮的text为 "&Cancel",
即设置text, setText("&Cancel");或创建时 QPushButton *pushButton = new QPushButton (QObject::tr("&Cancel"));
Qt的编译器会将字符'&'后的'C'在显示时下方多一下划线,表明'C'为该按钮的快捷键,通过"Alt+c"操作来实现对pushButton的点击。
2、有的时候,我们会有这种需求,想在按钮上或别的控件上以包括字符'&'为显示名如"Cancel&Exit",这样字符串中的'&'需要对其进行转义,
通常我们会想到使用"/"来实现,试过发现不行,后来,
直接使用'&'来转义
没想到出现了想要的效果。即tr("Cancle&&Exit")。
[c-sharp]
view plain
-
#include <QApplication>
-
#include <QtGui>
-
#include <QObject>
-
int
main (
int
argc,
char
*argv[])
-
{
-
QApplication app (argc, argv);
-
-
QWidget *widget =
new
QWidget;
-
-
QHBoxLayout *mainLayout =
new
QHBoxLayout;
-
-
QString str = QObject::tr(
"&Cancle&&Exit"
);
-
QPushButton *pushButton =
new
QPushButton (str);
-
-
QObject::connect (pushButton, SIGNAL (clicked()), qApp, SLOT (quit ()));
-
-
mainLayout->addWidget (pushButton);
-
-
widget->setLayout (mainLayout);
-
-
widget->show ();
-
-
return
app.exec ();
-
}
Qt中在按钮上显示字符&Qt中在按钮上显示字符'&' 1、通常使用含字符'&'的字符串为按钮的显示名称,如果设置按钮的text为 "&Cancel",即设置text, setText("&Cancel");或创建时 QPushButton *pushButton = new QPushButton (QObject::tr("&Cancel"));Qt的
基于
QT
完成的集计算器、电子相册、相机、记事本、多媒体音乐播
放
器、2048小游戏为一体的多媒体系统,有系统语音
提示
等。(遇到问题可以评论,注意注册和登录密码等数据默认保存在C盘下的Database文件夹下,使用前需先在C盘新建一个Database命名的文件夹)
项目使用软件:
Qt
Create5.12
项目使用模块:
数据库 GUI 界面设计 多媒体
摄像头 截图 文字转语音 动画显示
界面包含内容
一、 开机动画界面设计(自定义图片显示,图片
放
置欢迎字样)
二、 登录注册设计
1. 注册 数据库+MD5 加密 让用户自由注册
a. 点击注册跳转到账户注册界面、点击注册
中
返回可以返回登录界面
b. 注册界面数据设置为不为空,用户名和用户账号不能有重复
c. 确认注册进行数据的插入,字段:用户名、性别、账户、密码
注册成功:消息盒子
提示
成功,清空输入框的内容
注册失败:消息盒子
提示
用户存在
d. 取消注册清空所有输入框内容
e. 限定输入框的输入长度,在对应的输入框设置
提示
内容
f. 如何确定选择的是男还是女
提示
:if 判断
ui-> QRadio
Button
->isChecked()
2. 登录 通过查阅数据库进行对比登录
成功登录:消息盒子
提示
成功,播报用户名,跳转到主界面
失败登录:消息盒子
提示
失败,清空账户和密码
3. 输入框设计为椭圆状,设置输入
提示
字符
4.
按钮
设置点击和触摸时颜色切换效果或者使用图片作为背景
5. 界面背景设置为图片,标题设置为
中
文,图标设置为图片
三、 主界面设计
1.
按钮
设置点击和触摸时颜色切换效果或者使用图片作为背景
2. 界面背景设置为图片,标题设置为
中
文,图标设置为图片
3. 时间显示控件自由选择
4. 进入其他界面操作时进行语音
提示
5. 所有子界面能够返回主界面,在返回主界面时进行消息盒子
提示
6. 设置所有子界面的标题文字
QPixmap类:绘图
使用QLabel或QAbstract
Button
的子类之一(例如Q
Push
Button
和
QT
ool
Button
),可以轻松地在屏幕上显示QPixmap
QLabel具有pixmap属性,而QAbstract
Button
具有icon属性
# 创建一个空的 pixmap, 并设定其尺寸
self.pix =
Qt
Gui.QPixmap(300, 300) # 默认填充颜色为黑色
self.pix.fill('red') # 修改填充颜色为红色
self.setPixma
这个方法有两种解决方案,1是采用图片,也就是把文字做成图片,然后把图片
放
到
按钮
上,这种方法比较稳定,但是比较麻烦,下面说一下另一种,也就是直接添加。
直接添加的基本思路如下:带有上下标的文字可以通过Qlabel实现,那么只要将Qlabel
放
到
按钮
上面
,就能实现我们想要的效果。需要注意的是,为了让文字在
按钮
的正
中
间显示,需要对Qlabel实施布局操作。
在ui界面
中
,只能单独的拖出来
button
和label,label不能
放
到buttton上,所以必须通过代码实现。
实现代码如下:
QLabel *l
Q
Push
Button
*mBtn = new Q
Push
Button
();
mBtn->setFont(50);
QString message = tr("Q
Push
Button
内容显示省略号方法");
QFontMetrics elideFont(mBtn->font());
mBtn->setText(elideFont.elidedText(message,
Qt
::E...
ui->
push
Button
->setIconSize(QSize(32,32));
ui->
push
Button
->setIcon(QIcon(":/images/Setting.png"));
ui->
push
Button
->setText(QString::fromLocal8Bit("系统设置"));...
ui.
push
Button
->setFocus(); //设置默认焦点
ui.
push
Button
->setShortcut( QKeySequence::InsertParagraphSeparator ); //设置快捷键为键盘的“回车”键
ui.
push
Button
->setShortcut(
Qt
::Key_Enter); //设置快捷键为enter键
ui.
push
Button
->setShortcut(
Qt
::Key_Return); //设置快捷键为小键盘上的ent
// 创建显示
按钮
Q
Push
Button
*show
Button
= new Q
Push
Button
("显示", &window);
QObject::connect(show
Button
, &Q
Push
Button
::clicked, [&](){
textEdit->setPlainText(lineEdit->text());
// 创建退出
按钮
Q
Push
Button
*quit
Button
= new Q
Push
Button
("退出", &window);
QObject::connect(quit
Button
, &Q
Push
Button
::clicked, &window, &QWidget::close);
// 创建布局
QVBoxLayout *layout = new QVBoxLayout(&window);
layout->addWidget(lineEdit);
layout->addWidget(textEdit);
layout->addWidget(show
Button
);
layout->addWidget(quit
Button
);
// 显示窗口
window.show();
// 运行应用程序
return app.exec();
您可以将
上面
的代码保存为一个名为 `main.cpp` 的文件,然后使用
QT
软件编译运行即可。
如果您有任何问题或需要进一步的帮助,请随时向我提问。