首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Qt设计器:无法更改字体大小

Qt设计器:无法更改字体大小
EN

Stack Overflow用户
提问于 2015-02-05 01:08:01
回答 1查看 3.4K关注 0票数 2

我在选项卡上有一些标签(即tabWidget),当我更改fontsize时,它确实会改变,但是当我保存文件时,它们都会切换回其他的东西(默认的或其他的)。这里发生什么事情?!

EN

回答 1

Stack Overflow用户

发布于 2015-03-27 04:07:39

我认为您需要使用样式表来设置字体。不久前,我正在寻找信息,我找到了一个解决方案,阅读Qt文档并使用一些正式的Qt示例。

这里有一个例子。按照自己的要求更改css。

.pro文件

代码语言:javascript
运行
AI代码解释
复制
HEADERS       = mainwindow.h 
FORMS         = mainwindow.ui 
RESOURCES     = stylesheet.qrc
SOURCES       = main.cpp \
                mainwindow.cpp \

stylesheet.qrc

代码语言:javascript
运行
AI代码解释
复制
<RCC>
<qresource prefix="/">
    <file>qss/cool.qss</file>
</qresource>
</RCC>

main.cpp

代码语言:javascript
运行
AI代码解释
复制
#include <QtWidgets>

#include "mainwindow.h"

int main(int argc, char *argv[])
{
    Q_INIT_RESOURCE(stylesheet);

    QApplication app(argc, argv);
    MainWindow window;
    window.show();
    return app.exec();
}

mainwindow.h

代码语言:javascript
运行
AI代码解释
复制
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QtWidgets>

#include "ui_mainwindow.h"

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow();

    Ui::MainWindow ui;

private:
    void loadStyleSheet(const QString &sheetName);
};

#endif

mainwindow.cpp

代码语言:javascript
运行
AI代码解释
复制
#include <QtWidgets>

#include "mainwindow.h"

MainWindow::MainWindow()
{
    ui.setupUi(this);
    loadStyleSheet("Cool");
}

void MainWindow::loadStyleSheet(const QString &sheetName)
{
    QFile file(":/qss/" + sheetName.toLower() + ".qss");
    file.open(QFile::ReadOnly);
    QString styleSheet = QString::fromLatin1(file.readAll());

    qApp->setStyleSheet(styleSheet);
}

最后,最重要的文件,cool.qss:

代码语言:javascript
运行
AI代码解释
复制
QTabWidget::pane { /* The tab widget frame */
    border: 2px solid #C2C7CB;
}

QTabWidget::tab-bar {
    left: 5px; /* move to the right by 5px */
}

/* Style the tab using the tab sub-control. Note that
    it reads QTabBar _not_ QTabWidget */
QTabBar::tab {
    background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
                                stop: 0 #E1E1E1, stop: 0.4 #DDDDDD,
                                stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3);
    border: 2px solid #C4C4C3;
    border-bottom-color: #C2C7CB; /* same as the pane color */
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    /* You should change min-width according to the
        lenght of your tab text */
    min-width: 14ex;
    padding: 4px;
    font: bold 14px;
}

QTabBar::tab:selected, QTabBar::tab:hover {
    background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
                                stop: 0 #fafafa, stop: 0.4 #f4f4f4,
                                stop: 0.5 #e7e7e7, stop: 1.0 #fafafa);
}

QTabBar::tab:selected {
    border-color: #9B9B9B;
    border-bottom-color: #C2C7CB; /* same as pane color */
}

QTabBar::tab:!selected {
    margin-top: 2px; /* make non-selected tabs look smaller */
}

在这个文件中,您有更多不必要的代码,但是使用所有属性可能是很重要的。

无论如何,您需要根据您的要求更改以下行。

代码语言:javascript
运行
AI代码解释
复制
font: bold 14px;

检查最小宽度对于字体大小也是很重要的.

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28339948

复制
相关文章
Qt状态更改事件
可以捕获的状态有: QEvent::ToolBarChange (在macOS上工具栏按钮被切换) QEvent::ActivationChange (顶级窗口激活状态已更改) QEvent::EnabledChange (窗口的启用状态已更改) QEvent::FontChange (窗口的字体已更改) QEvent::StyleChange (窗口的样式已更改) QEvent::PaletteChange (窗口的调色板已更改) QEvent::WindowTitleChange (窗口的标题已更改) QEvent::IconTextChange (窗口的图标文本已更改(不赞成使用)) QEvent::ModifiedChange (窗口的修改状态已更改) QEvent::MouseTrackingChange (鼠标跟踪状态已更改) QEvent::ParentChange (窗口的父类已更改) QEvent::WindowStateChange (窗口的状态"最小化、最大化或全屏"已更改) QEvent::LanguageChange (应用程序翻译已更改) QEvent::LocaleChange (系统区域设置已更改) QEvent::LayoutDirectionChange (默认应用程序布局方向已更改) QEvent::ReadOnlyChange (窗口的只读模式已更改)
Qt君
2023/03/17
1.1K0
Qt状态更改事件
pycharm修改镜像源_pycharm更改字体大小
1.国内常用的镜像源 清华:https://pypi.tuna.tsinghua.edu.cn/simple 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 2.pip下载时例子之如何使用这些镜像: pip install pygame -i https://pypi.tuna.tsinghua.edu.cn/simple 在文件后加-i 镜像地址 如何在pycharm中修改自己的镜像源:
全栈程序员站长
2022/09/27
1.4K0
pycharm修改镜像源_pycharm更改字体大小
更改QT程序的图标
首先自己准备好喜欢的BMP位图文件,然后利用图标制作工具IconMaster将位图文件转化为ICO图标文件
全栈程序员站长
2022/07/05
1.3K0
Qt编写控件属性设计器
自从研究Qt编写自定义控件以来,一发不可收拾,越多越多人有类似的需求找我定制控件,陆陆续续写了上百个控件,目前已超过150个,于是逐渐衍生了另外一个需求,提供一个控件属性设计器,类似QtDesigner一样,可以方便的拖曳控件,改变属性,立即应用,并导出到文件方便下次直接加载,这个设计器有点像组态中的一个雏形,提供了基本的加载控件,导入导出数据,数据源绑定等。
feiyangqingyun
2019/09/14
3.5K1
Qt编写控件属性设计器
SQL server无法更改表
在设计器中,选择表设计器和数据库设计器,将阻止保存要求重新创建表的更改选项取消勾选 再次编辑表中内容时就不会再有错误弹窗。
magize
2023/07/11
3040
SQL server无法更改表
phpStorm字体大小无法调整, 怎么办?
最近上手了一款轻量级IDE phpStorm,可是就在调整编辑器字体大小时却遇到问题了, 发现字体大小无法调整,另外还有字体大小往左还有个“√”,始终无法去掉,这个勾限制了字体系列,就可怜巴巴的那几个,就下图那几个:
全栈程序员站长
2022/07/08
1.2K0
phpStorm字体大小无法调整, 怎么办?
android全局更改字体大小遇到的一些坑
最近app想控制全局字体大小,于是想用改变fontScale的方式来动态改变字体的大小。遇到一些坑,特此记录。
Crayon鑫
2023/10/10
8020
基于Qt的流程设计器(一)
一:先来看一下界面的截图: 说明: 拖动节点的时候,与该节点相关的箭头连线也会跟着调整; 用户可以使用鼠标从一个节点拖出一个箭头到另一个节点(鼠标在空白区域点击一下,拖出的箭头消失) 这三个图标,手型
liulun
2018/01/12
1.9K0
基于Qt的流程设计器(一)
Qt Designer界面设计器简介
   我们在制作 UI 界面的时候,一般可以通过UI制作工具和纯代码编写两种方式来实现。在 PyQt5 中,也可以采用这两种方式。在 PyQt5 中我们使用 Qt Designer 工具来制作 UI 界面。
星星在线
2019/05/28
8K1
毕业设计之Qt播放器[通俗易懂]
void MainWindow::slotOpenFile()//打开文件ok { // mplayerProcess->close(); currentFileName = QFileDialog::getOpenFileName(this, tr(“打开媒体文件”), tr(“/root/Music”), tr(“Music file(*.mp3 *.wav) ;; Video files(*.rmvb *.rm *.avi *.wmv *.mkv *.asf *.3gp *.mov *.mp4 *.ogv)” )); if( !currentFileName.isEmpty() ) { player->play(currentFileName); //this->showFullScreen(); } }
全栈程序员站长
2022/09/06
4980
[踩坑]iconfont Symbol svg引入无法更改颜色
最近公司组织架构调整(反正每次组织架构调整,领导就会下场。有一个idea或者有重构一下,先定一个月底上),被拉取一个项目组做新项目。这边图标现状:有些项目是font-face方式,有些用的阿里图标库,最近又在用腾讯图标库,有些甚至直接切图。
玖柒的小窝
2021/11/16
3.7K0
[踩坑]iconfont Symbol svg引入无法更改颜色
产品设计之动态字体大小
iOS的“设置” –> “显示与亮度” –> “文字大小”,可以修改默认的系统字体大小,当修改之后,系统自带的应用如信息等都会随之改变,手机QQ会随之发生变化:
meteoric
2018/11/20
1.6K0
Qt设计仿真机器人控制器
本文Jungle简单实现一个6自由度的工业机器人仿真控制器,用户可以通过界面上6个轴的滑条控制机器人的姿态。
用户6557940
2022/07/24
6620
Qt设计仿真机器人控制器
【QT】QT布局管理器
布局管理器 设计模式实现布局 详情见工具栏 垂直布局,水平布局,打破布局。 代码实现布局 main.cpp #include "testlayout.h" #include <QApplication> #include<QLabel> #include<QLineEdit> #include<QFormLayout> #include<QRadioButton> #include<QVBoxLayout> #include<QPushButton> #include<QSpacerItem> in
半生瓜的blog
2023/05/13
6090
【QT】QT布局管理器
Qt编写控件属性设计器1-加载插件
加载插件是整个属性设计器的第一步要打通的功能,插件中的控件都加载不了,后面就别搞别玩下去了没法玩的,要从一个动态库中加载出来控件,肯定需要用到反射机制,以前做.NET开发的时候就觉得反射这个东西相当强大,居然可以读取DLL加载出来控件,现在用Qt,发现Qt也有反射机制,也许这东东可能各大开发语言平台都具备吧,Qt反射对应的类叫QMetaObject,着实强大,其实整个Qt开发框架也是超级强大的,本人自从转为Qt开发为主后,就深深的爱上了她,在其他跨平台的GUI开发框架平台面前,都会被Qt秒成渣,Qt的跨平台性是毋庸置疑的,几十兆的内存存储空间即可运行,尤其是嵌入式linux这种资源相当紧张的情况下,Qt的性能发挥到极致。
feiyangqingyun
2019/09/14
1.3K0
Qt编写控件属性设计器1-加载插件
Qt编写控件属性设计器7-串口采集
数据源是组态软件的核心灵魂,少了数据源,组态就是个花架子没卵用,一般数据源有三种方式获取,串口、网络、数据库,至于数据规则是什么,这个用户自己指定,本设计器全部采用第一个字节作为数据来演示。
feiyangqingyun
2019/09/14
2.2K0
Qt编写控件属性设计器7-串口采集
Qt编写控件属性设计器4-加载属性
控件能加载拖曳拉伸了,这些都是基本的前提工作,接下来的重点就是要动态加载选中控件的属性了,Qt的属性机制那是异常的强大,只能用强大到爆来形容,Qt中编写自定义控件,如果属性都用Q_PROPERTY来描述过,那都支持整个Qt生态环境中的各种应用场景的加载,比如widget的属性设计,qml中的属性识别等,都是非常的方便。
feiyangqingyun
2019/09/14
1.1K0
Qt编写控件属性设计器4-加载属性
Qt编写控件属性设计器11-导入xml
上一篇文章负责把设计好的控件数据导出到了xml文件,本偏文章负责把导出的xml数据文件导入,然后在画布上自动生成对应的控件,Qt内置的xml数据解析功能,非常强大,都封装在QtXml组件中,Qt有个好处就是,封装了众多的各大操作系统平台的功能,尤其是GUI控件,不愧是超大型一站式GUI超市,虽然网络组件不是很强大,但是应付一些基础应用还是绰绰有余的。在导出xml数据的时候,属性列表和值都按照xml的属性存储的而不是子节点,所以在解析的时候需要遍历节点的属性名称和属性值,QDomNamedNodeMap attrs = element.attributes();然后循环挨个取出名称和值即可,QDomNode n = attrs.item(i);QString nodeName = n.nodeName();QString nodeValue = n.nodeValue();
feiyangqingyun
2019/09/14
8750
Qt编写控件属性设计器11-导入xml
点击加载更多

相似问题

Qt无法识别设计器

11

Qt设计器如何更改背景

12

单击“Qt设计器更改窗口”按钮

14

Qt设计器- Qt 4.8.1

11

更改字体大小后,Qt小部件无法正确调整

117
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档