我正在寻找像 QSlider 这样的 Qt 小部件,但支持这样的文本刻度标签: 这个小部件我将用作模式切换器。你遇到过这样的事情吗? 原文由 BiTOk 发布,翻译遵循 CC BY-SA 4.0 许可协议
我会使用 QSlider 和 QLabel (s) 如下所示。我通常的免责声明是,您可能需要自己进行一些微调和调整。 主文件 #include <QMainWindow> #include <QApplication> #include <QGridLayout> #include <QSlider> #include <QLabel> class MainWindow Q_DECL_FINAL : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = Q_NULLPTR) : QMainWindow(parent) { QSlider *slider = new QSlider(Qt::Horizontal, this); slider->setRange(1, 4); slider->setSingleStep(1); QLabel *label1 = new QLabel("Novice", this); QLabel *label2 = new QLabel("Intermediate", this); QLabel *label3 = new QLabel("Advanced", this); QLabel *label4 = new QLabel("Expert", this); QGridLayout *layout = new QGridLayout; layout->addWidget(slider, 0, 0, 1, 4); layout->addWidget(label1, 1, 0, 1, 1); layout->addWidget(label2, 1, 1, 1, 1); layout->addWidget(label3, 1, 2, 1, 1); layout->addWidget(label4, 1, 3, 1, 1); setLayout(layout); } }; #include "main.moc" int main(int argc, char **argv) { QApplication application(argc, argv); MainWindow mainWindow; mainWindow.show(); return application.exec(); } 主程序 TEMPLATE = app TARGET = main QT += widgets SOURCES += main.cpp 构建并运行 qmake && make && ./main 原文由 László Papp 发布,翻译遵循 CC BY-SA 3.0 许可协议
我会使用
QSlider
和QLabel
(s) 如下所示。我通常的免责声明是,您可能需要自己进行一些微调和调整。主文件
主程序
构建并运行