标签: qt4

QLabel:设置文本和背景的颜色

如何设置文本和背景的颜色QLabel

qt qt4 qlabel

161
推荐指数
6
解决办法
30万
查看次数

105
推荐指数
2
解决办法
5万
查看次数

如何使Qt Widget随窗口大小而增长?

我希望有一个小的QFormLayout增长来填充其父窗口小部件.

我使用Qt Designer中的模板创建了一个新的.ui文件QWidget.我在QFormLayout里面放了一个'窗口',然后把一些控件放在里面QFormLayout.

这一切都运行得相当好,但QFormLayout总是保持我在Qt Designer中设置的大小.我希望QFormLayout填充其父窗口小部件并使用它进行扩展/缩小.

我怎么能做到这一点?

qt4 qt-designer autoresize

81
推荐指数
4
解决办法
11万
查看次数

如何隐藏/删除"?" Qt对话框"标题栏"上的帮助按钮?

我在我的一个应用程序中使用Qt Dialogs.我需要隐藏/删除帮助按钮.但我无法确定我的帮助按钮的确切位置.不确定它是否是Qt窗口上的特定标志.

qt qt4 qdialog

71
推荐指数
5
解决办法
4万
查看次数

Qt:调整包含QPixmap的QLabel的大小,同时保持其宽高比

我使用QLabel向用户显示更大,动态变化的QPixmap的内容.根据可用空间,使这个标签更小/更大会很好.屏幕尺寸并不总是与QPixmap一样大.

如何修改QLabel QSizePolicysizeHint()QLabel以调整QPixmap的大小,同时保持原始QPixmap的宽高比?

我无法修改sizeHint()QLabel,设置minimumSize()为零无济于事.hasScaledContents()QLabel上的设置允许增长,但是打破了宽高比...

子类化QLabel确实有帮助,但是这个解决方案只为一个简单的问题添加了太多的代码......

任何聪明的提示如何在没有子类化的情况下完成此任务?

c++ qt qt4 qlabel

71
推荐指数
6
解决办法
8万
查看次数

实现QThread的正确方法是什么......(请举例......)

QThread的Qt文档说是从QThread创建一个类,并实现run方法.

以下内容来自4.7 Qthread文档......

要创建自己的线程,请继承QThread并重新实现run().例如:

 class MyThread : public QThread
 {
 public:
     void run();
 };

 void MyThread::run()
 {
     QTcpSocket socket;
     // connect QTcpSocket's signals somewhere meaningful
     ...
     socket.connectToHost(hostName, portNumber);
     exec();
 }
Run Code Online (Sandbox Code Playgroud)

所以在我创建的每一个线程中,我都做到了这一点,并且对于大多数事情来说它工作正常(我没有在我的任何对象中实现moveToThread(this)并且它工作得很好).

我上周遇到了障碍(设法通过解决我创建对象的地方来解决它)并找到了以下博文.这里基本上说子类化QThread确实不是正确的方法(并且文档不正确).

这是来自Qt的开发人员,所以乍一看我很感兴趣,经过进一步的反思,同意他.按照OO原则,你真的只想子类化一个类来进一步增强该类......不要直接使用类方法......这就是为什么要实例化...

让我们说我想将一个自定义QObject类移动到一个线程......这样做的"正确"方法是什么?在那篇博客文章中,他说'他在某个地方有一个例子......但如果有人可以向我进一步解释它,我将不胜感激!

更新:

由于这个问题引起了如此多的关注,下面是4.8文档的复制和粘贴,以及实现QThread的"正确"方式.

class Worker : public QObject
 {
     Q_OBJECT
     QThread workerThread;

 public slots:
     void doWork(const QString &parameter) {
         // ...
         emit resultReady(result);
     }

 signals:
     void resultReady(const QString &result);
 };

 class Controller : public QObject
 {
     Q_OBJECT
     QThread workerThread;
 public:
     Controller() {
         Worker *worker = …
Run Code Online (Sandbox Code Playgroud)

qt multithreading qt4 qthread

62
推荐指数
2
解决办法
7万
查看次数

如何使QTableWidget中的列只读?

我想有一个列QTableWidget 不可编辑.
在论坛中,我已经阅读了很多关于某些flags但无法实现的内容.

qt qt4 qtablewidget

61
推荐指数
2
解决办法
6万
查看次数

Qt - 从布局中删除所有小部件?

这似乎并不容易.基本上,我通过函数将QPushButtons添加到布局中,当函数执行时,我想首先清除布局(删除所有QPushButtons以及其中的任何其他内容),因为更多按钮只会附加到滚动视图.

QVBoxLayout* _layout;
Run Code Online (Sandbox Code Playgroud)

CPP

void MainWindow::removeButtonsThenAddMore(const QString &item) {

//remove buttons/widgets

QVBoxLayout* _layout = new QVBoxLayout(this);

QPushButton button = new QPushButton(item);
_layout->addWidget(button);

QPushButton button = new QPushButton("button");
_layout->addWidget(button);

QWidget* widget = new QWidget();
widget->setLayout(_layout);

QScrollArea* scroll = new QScrollArea();
scroll->setWidget(widget);
scroll->show();

}
Run Code Online (Sandbox Code Playgroud)

c++ mobile qt nokia qt4

60
推荐指数
6
解决办法
6万
查看次数

理解Qt中的表单布局机制

Qt 具有灵活而强大的布局机制来处理桌面应用程序窗口的视图.

但它非常灵活,几乎无法理解,当出现问题并需要微调时.如此强大,它可以击败任何人,试图压倒Qt对形式应该如何看待的看法.

那么,任何人都可以解释,或提供文章或Qt定位机制的来源吗?

我试图强迫QLabel,QPushButton并且QTableView,在他们的名字尾随下划线标记,是高出两倍QTextBrowserverticalStretch = 1以下.如何正确处理小部件的高度?

谷歌文档中我的表格.ui文件.在名称中搜索"____",在QtDesigner中预览

forms qt qt4 qt-designer

59
推荐指数
1
解决办法
4万
查看次数

如何使用信号/插槽机制获取发件人窗口小部件?

可以将多个信号绑定到一个插槽(不是?).那么,有没有办法了解哪个小部件发送信号?我正在寻找像sender.NET中的事件参数之类的东西

qt4

56
推荐指数
3
解决办法
6万
查看次数