qt - 如何使 QML 控件看起来更好?

标签 qt qml qt5 qtquick2 qtquickcontrols2

我在 QtCreator 中创建了默认的“空”qml 应用程序。然后我只需添加按钮并运行它:

import QtQuick 2.11
import QtQuick.Window 2.11
import QtQuick.Controls 2.4

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Button {
        text: "Button1"
    }
}

但是按钮看起来非常难看:

enter image description here

我应该做什么(打开或添加或smth)使它看起来更有吸引力?

例如,即使是默认的 Win10 View 也适合我。

答案加 :
这对我来说很难过,但没有办法让 QtQuick 应用程序看起来比自己实现所有控件更好。下面的答案解释了如何做到这一点。

最佳答案

Controls 2 是一种全新设计,从一开始就针对性能进行了优化,从某种意义上说,它们偏离了原生外观,朝着跨不同平台的统一外观方向发展。

您可以选择some of the additional pre-defined styles对于控件 2,或 customize a style in several ways ,这很容易让你看起来更好,唉,如果原生外观对你很重要,似乎没有捷径可走。还有this effort to create yet another GUI library专门用于原生外观,但它看起来像 WIP。

请注意,您仍然可以将旧的 QWidgets 样式与旧的控件一起使用,但这样做似乎需要引入 widgets模块作为项目依赖,这并不理想。

关于qt - 如何使 QML 控件看起来更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52796448/

相关文章:

qt - 在 QPlainTextEdit 中禁用 'Return' 键

qt - 无法处理 QML 中的子矩形鼠标事件

c++ - 为 Windows 安装 Qt-5

qt - 由于 ssl 问题,无法在 Ubuntu 上安装 QT4

c++ - 打印完成后如何从打印机获取 Qt 信号?

qt - 将外部SQLite数据库导入我的项目

c++ - QNetworkProxy - 绕过某些地址

c++ - 如何处理 Qt5 关闭事件以终止?

c++ - 输出 long double 到控制台

c++ - 无法找出将信号从 qml 绑定(bind)到 cpp 插槽的正确方法