C++ 当Qt对象为';不是通过设计器创建的吗?

C++ 当Qt对象为';不是通过设计器创建的吗?,c++,qt,signals-slots,C++,Qt,Signals Slots,嗨,我有一个空闲时间,所以决定看看Qt,看看我可以多么容易地将我的windows应用程序移植到Qt 我唯一真正的问题是有两个控件需要在Qt下重新实现。我已经处理了控件的基本绘图,但是我的控件创建了一个子滚动条。问题是,这个滚动条是作为我的新小部件的一部分动态创建的(即m_scrollbar是小部件的成员)。然后如何响应滚动条的移动。在其他情况下,这很容易,因为我只需在我的受保护插槽下的

嗨,我有一个空闲时间,所以决定看看Qt,看看我可以多么容易地将我的windows应用程序移植到Qt

我唯一真正的问题是有两个控件需要在Qt下重新实现。我已经处理了控件的基本绘图,但是我的控件创建了一个子滚动条。问题是,这个滚动条是作为我的新小部件的一部分动态创建的(即
m_scrollbar
是小部件的成员)。然后如何响应滚动条的移动。在其他情况下,这很容易,因为我只需在我的
受保护插槽下的
上创建一个
,然后在那里处理它。但是,这依赖于调用
myscrollbar
QScrollBar
。由于我已经动态地创建了对象(即,不是通过设计器),我如何捕获该信号

我猜这很简单,我忽略了显而易见的:)


HandleSliderMove是你们班的slot方法。

我认为你们需要花更多的时间在Qt文档上。可能是真的。。。但是考虑到我在大约一个小时前第一次拿起Qt,我想我做得“不太”糟糕:D我喜欢它但是。。。这很简单:)甜。。。我知道这会很简单!干杯:)
connect( myScrollbar, SIGNAL( <signal signature>), this, SLOT( <slot signature>));
myScrollbar = new QScrollBar; // Create the scroll bar
// ... add it to the layout, etc.
// ... and connect the signal to your slot
connect( myScrollbar, SIGNAL( sliderMoved( int)), this, SLOT( handleSliderMoved( int)));