qt相关内容

在Qt中,如何正确实现委托?

我遵循了模型/视图/控制器范例。我非常确定模型和视图是正确的,但我认为我在委托中做了一些错误的事情。一切都“正常”,除了第一次点击控件只是“点亮控件”,第二次点击控件就会与之交互。这是委托通常的实现方式吗?我的实现需要大量的构造和销毁(由SCOPED_PTR隐藏),因此任何有关这方面的技巧也是有帮助的。 QWidget *ParmDelegate::createWidget(const QM ..
发布时间:2022-03-30 15:18:41 C/C++开发

无法使用Microsoft编译器编译Qt

我希望使用VS2010编译器生成Qt(4.7.3),但在配置时遇到问题。 我正在使用VS-COMMAND-SHELL。 我的配置命令如下所示: configure.exe -platform win32-msvc2010 -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-multimedia ..
发布时间:2022-03-30 15:14:39 C/C++开发

Qt->;QGraphicsView->;QGraphicsItem大小调整

我对Qt中的QGraphicsView非常陌生。 据我所知,没有内置的方法可以用鼠标调整场景中QGraphicsItem的大小。 我正在寻找的是能够通过拖动屏幕上的角或边缘来调整QGraphicsRectItem的大小。 有没有简单的方法可以做到这一点?在线上是否有库或代码实现此功能? 我当前使用的是Qt 4.5.1。 推荐答案 我猜this线程也有类似的问题。 ..
发布时间:2022-03-30 15:09:48 C/C++开发

QableWidget:如何在特定列中查找值

我需要使用qablewidget检查特定列中是否存在特定值。 在我的例子中,我需要检查第一列ID是否已经存在,如果是,我需要包含行的编号来更新此行,否则我想添加该行。 Qt有没有提供检查栏目或应该检查的解决方案 推荐答案 我假设您在第一列中查找值(因此Item(int,int)中的第二个参数为0),表名为MyQTableWidget int rows = myQTableWidg ..
发布时间:2022-03-30 15:04:08 C/C++开发

使用Qt css设置自己的Q_Property(QFont)

我正在使用Qt 4.6.2,但我对Qcss有问题。我有自己的Q_Property(QFont MyFont Read MyFont Set SetMyFont)。我想用Qcss更改它,但它不起作用。我尝试使用正常的font语法,但不起作用。我还尝试了其他一些组合,如: qproperty-myFont: font(serif 20 1 0) font(serif 20 bold) QFont ..
发布时间:2022-03-30 15:01:00 其他开发

如何让QFileDialog提示覆盖?

我有一个打开QFileDialog的QDialog,如下所示: QFileDialog fd(this); fd.setFileMode(QFileDialog::AnyFile); if (fd.exec()) { // save data to a file } 不幸的是,the default behavior似乎不是很默认,如果我选择了一个已经存在的文件,文件对话框不会 ..
发布时间:2022-03-30 14:52:17 其他开发

计算目录中的文件

我想计算一个目录中的文件数,我在QDir类中使用了count方法,但它总是返回文件数加2!它为什么要做这件事? 谢谢 推荐答案 QDir.count()返回目录中文件和目录的总数。这包括.(This)和..(父)目录项。因此,计数始终比“实际”文件和子目录多两个。 ..
发布时间:2022-03-30 14:49:51 C/C++开发

使用QGraphicsObject对QGraphicsItem的惩罚?

我目前有一个基于QGraphicsItem的项目层次结构。 我想改为移动到QGraphicsObject,这样我就可以将属性放在我的项目上。我不会使用信号/插槽或QObject的任何其他功能。 我被告知不应该从QObject派生,因为它“重”且“慢”。 为了测试影响,我从QGraphicsObject派生,向我的项目添加了几个属性,并查看了正在运行的应用程序的内存使用情况。我使用 ..
发布时间:2022-03-30 14:43:56 其他开发

检查目录是否为空

我正在尝试检查目录是否为空。 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); QDir Dir("/home/highlander/Desktop/dir"); if(Dir.count( ..
发布时间:2022-03-30 14:38:57 其他开发

在QGraphicsView的ScrollHandDrag模式下,如何停止QGraphicsItems在场景中的移动?

我在场景中有多个QGraphicsItem,分布在场景的不同部分。在应用中,有不同的模式,其中一种模式是用户可以滚动场景(手掌拖动模式)。 若要在场景I上滚动,请将QGraphicsView的dragMode设置为ScrollHandDrag。 但问题是,当用户尝试通过在任何QGraphicsItem上拖动(MousePress和MouseMove)来滚动场景时,它会移动QGraphicsI ..
发布时间:2022-03-30 14:32:59 其他开发

Qt QFileDialog--仅具有静态函数的本机对话框?

我只是在尝试保存一个文件。但是,我需要输入一个不带后缀的文件名来自动获得默认后缀(setDefaultSuffix()就是这样做的)。 我不想因为这个而完全失去本机保存对话框。Exec()不是从QDialog重载的,因此它完全绕过本机挂钩(忽略DontUseNativeDialog选项,即使该选项为False)。 如果我禁用文件覆盖警告,并在函数返回后自己添加默认后缀,那么如果用户不想覆盖 ..
发布时间:2022-03-30 14:27:27 其他开发

Qt中的表头可以有多行吗?

我使用的是Qt4,我有一个QTableView,它使用自定义模型显示数据。我希望在表头中有两行,理想情况下第一行的一些单元格跨越多个列。这可能吗? 推荐答案 我也在寻找此问题的解决方案。我找到了这个班级: HierarchicalHeaderView 在qt-apps.org上,用户Barmaglod(Krasnoshchekov Petr)。 该解决方案超出了您(和我)的需求。 ..
发布时间:2022-03-30 14:23:28 其他开发

将QTableWidget单元格的边框设置为0px

如何将QTableWidget中的单元格边框设置为0px?最好是我可以选择将单元格边框的哪些边设置为0,但我也可以将它们全部设置为0。 编辑:将边框设置为0px或将颜色设置为白色也可以。 推荐答案 您可以使用QTableWidget::setShowGrid禁用所有边框,然后使用样式表重新启用部分边框(例如:"QTableView::item { border-left: 1px ..
发布时间:2022-03-30 14:18:04 其他开发

如何找到文本光标的全局位置?

我要在QPlainTextEdit中的文本光标位置执行QMenu对象。我的问题是QTextCursor仅由其在文本中的位置(字符的索引)定义。 如何查找QTextCursor的全球位置?我是否应该使用QTextCursor以外的其他对象来查找要打开QMenu的文本光标的位置? 提前感谢。 推荐答案 我从未尝试过自己,但QPlainTextEdit::cursorRect()不起 ..
发布时间:2022-03-30 14:17:01 其他开发

关于在Qt中使用未记录的类

在Qt中使用未记录的QObjectUserData类和QObject::setUserData是否安全? 推荐答案 相反,您可以考虑使用QObject::setProperty,这不仅允许您设置编译时声明的属性,还允许您设置不需要在使用前声明的动态属性。这允许您在运行时将任意值附加到QObject,类似于用户数据。 ..
发布时间:2022-03-30 14:14:54 C/C++开发

如何在Qt中将Click事件传递给下面的兄弟?

我在一个窗口中子A和子B中有两个重叠的小部件。子A位于B上方并获得鼠标事件,但有时点击应该通过并最终命中子B。 理想的解决方案是使用event->ignore(),但这会将事件传递给父小部件,而不是同级小部件。 “全部传递”解决方案setAttribute(Qt::WA_TransparentForMouseEvents);也不起作用,因为子级A需要捕获某些事件。 如何告诉Qt“ ..
发布时间:2022-03-30 14:01:28 其他开发

正在读取HTTP标头

我正在尝试将我的应用程序与Web服务连接,而here,用户建议将自定义标头发送回我的应用程序。 我正在使用此代码 void Coonnec::serviceRequestFinished(QNetworkReply *reply) { QByteArray bytes = reply->readAll(); if (reply->error() != QNetwork ..
发布时间:2022-03-30 13:55:50 其他开发