问题标签 [slot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt4 - 错误'没有这样的插槽'qt
我正在尝试通过信号/插槽选项连接两个小部件,但我不断收到“不存在这样的插槽”的错误消息。事实是,在编写程序时,我使用 Ctrl + Space 只是为了确保我没有打错任何字。
所以我有一个小部件:
渲染区域.h
渲染区域.cpp
第二个小部件:
表视图列表.h
表视图列表.cpp
和主要小部件:
renderingwidget.cpp 我连接上面的2:
ui->graphicsView 已提升为 renderArea,ui->clothoidTable 已提升为 TableViewList。
那么为什么会出现这个错误呢?
class - 如何使用 Roxygen2 正确记录 S4 类插槽?
对于使用 roxygen(2) 记录类,指定标题和描述/细节似乎与函数、方法、数据等相同。但是,插槽和继承是它们自己的一种动物。在 roxygen2 中记录 S4 类的最佳实践是什么(当前的或计划的)?
尽职调查:
我发现@slot
在 roxygen 的早期描述中提到了一个标签。
一个 2008 R-forge 邮件列表帖子
似乎表明这已经死了,并且@slot
在 roxygen 中不支持:
roxygen2 是这样吗?前面提到的帖子建议用户应该使用 LaTeX 标记制作自己的逐项列表。例如,扩展该类的新 S4 类"character"
将被编码和记录如下:
然而,尽管这可行,但这种记录插槽\describe
的\item
方法似乎与 roxygen(2) 的其余部分不一致,因为没有- 分隔的@
标签,并且插槽可能会在roxygenize()
. 它也没有说明记录正在定义的类的继承的一致方式。@import
我想依赖通常仍然可以使用标签正常工作(如果特定插槽需要来自另一个包的非基类) 。
那么,总而言之,roxygen(2) 插槽的当前最佳实践是什么?
目前似乎有三个选项需要考虑:
- A -- 分项清单(如上例)。
- B -
@slot
...但我错过了额外的标签/实现。我无法让@slot 与 roxygen / roxygen2 在上面示例中作为逐项列表的替代品的版本中使用。同样,上面的示例确实适用于 roxygen(2)。- C - 一些用于指定插槽的替代标签,例如
@param
,可以完成同样的事情。
我正在从我在githubroxygen2
上的开发页面上发表的帖子中借用/扩展这个问题。
c++ - 如何在不从 QObject 派生的情况下使用 SIGNAL 和 SLOT?
或以其他方式表达我的问题(尽管它没有解决我的问题):'QObject::QObject' 无法访问在类'QObject' 中声明的私有成员
我的班级需要 SIGNAL 和 SLOTS 功能,但我认为如果不从QObject
?
问题似乎是我需要从中派生QObject
以使用信号和插槽......但我需要MyClass
. 但由于以下特性,我无法构造它们QObject
:
No Copy Constructor or Assignment Operator。
我试了很多...
所以我的 shou Class 看起来像这样:
我需要MyClass
.
那么有没有可能避免“'QObject :: QObject'无法访问在类'QObject'中声明的私有成员”错误?
或者作为替代方案是否有可能使用没有 的信号和插槽QObject
?
我很高兴有任何建议。
installation - RPM+Yum:同时安装两个同名不同版本的包
对于版主:这个问题是关于基于 RPM 的安装程序的开发。
我正在为我们的软件开发打包系统。我们设计了更新管理,以便当我们想要移动到新的主要版本时,我们更改 RPM 包以将所有文件安装到另一个目录(带有另一个后缀)并更改包版本。我们为包保留相同的名称(例如:a-package-1.0.0 --> a-package-2.0.0)。我们希望安装新的软件包,保留旧的软件包,以便用户在迁移到新软件包时能够继续使用旧版本。
所以我们的软件包和 RPM 实用程序之间没有文件冲突,同时安装它们没有任何问题(rpm -ivh ...)。但百胜认为新版本是对旧版本的更新。
有没有办法产生这样的 RPM 包来让 'yum install a-package-1.0.0 a-package-2.0.0' 安装它们?也许必须设置包中的一些标志?我什么也没找到。
c++ - Qt4 使用一个类创建一个 SLOT 来控制一个 QWebView 的 setTextSizeMultiplier 使用 CONNECT 和一个 QSLIDER
使用 Qt4,我如何使用 CONNECT 和 QSLIDER 创建一个类来创建一个 SLOT 来控制 QWebView 的 setTextSizeMultiplier。
我的代码:(thesliderbar 是 QSlider,vweb 是 QWebView)
我收到了 connect(); 的错误。
错误:
ywr.cpp:31: 错误: ',' 标记之前的预期主表达式
ywr.cpp:-1: 在构造函数 'ywr::ywr(QWidget*)' 中:
python - 如何查找信号是否连接到任何东西
有没有办法判断一个信号是否已经连接到一个函数?
即我想看看 signals.siSelectionChange 是否连接到任何东西
qt - Qt 主窗口菜单信号
我有处理 QMainWindow 的“核心”对象。
Core.h 代码
Core.cpp 代码
我正在尝试将主窗口菜单栏信号连接到核心插槽,如下所示:
但它不起作用。我是 C++ 和 Qt 的新手。这个怎么连接?或者也许有更好的方法来处理其他程序部分的主窗口操作。
UPD 问题已解决。忘记包含 QMenuBar
qt - 我可以将基类中的公共函数修改为 Qt 派生类中的公共槽吗?
我现在正在使用 Qt。
我写了一个 C++ 类A,里面有一些公共函数。现在,我正在编写一个 Qt 类B,它具有来自QObject和A 的多个继承。
我想将 A 中的一个公共功能更改为B中的公共插槽。
有可能吗?
c++ - 如何将 QActions 列表添加到 QMenu 并使用单个插槽处理它们?
首先,我有一个QWidget
s 列表,直到运行时我才知道它的长度。然后我创建一个QListWidget
显示它们的位置,当有人点击它们时,我使用信号currentItemChanged(QListWidgetItem*, QListWidgetItem*)
来捕捉它并获取点击项目的索引。
现在我想在QMenu
. 我会在构建它及其操作时知道该列表QMenu
,但我将无法对其进行硬编码。
如何创建动作,捕捉它们的信号并将它们连接到同一个插槽,根据菜单列表中动作的位置(索引)执行不同的操作?必须有某种方法来解决这个问题,因为其他应用程序使用它。我试图查看映射,但我无法理解如何使用它。
我试图抓住sender
插槽,但无法从中获得任何有用的信息。