, başka bir sınıfın üst sınıf böylece beyan bir QWidget sınıf var:QT yuvaları ve kalıtım: programım neden alt sınıf yerine ana bilgisayara bağlanmaya çalışıyor? Bir QT programında
class Renderer : public QGLWidget
{
Q_OBJECT
....
}
class A : public Renderer
{ .... }
Şimdi Oluşturucu'daki bulunmadığı sınıf A için bir yuva var, ancak çalıştırmayı denediğinizde Program, bu sınıf A bağlantıları yapmak için başarısız:
Object::connect: <sender name: 'push_button'>
Object::connect: <receiver name: 'A'>
Object::connect: No such slot Renderer::loadDialog() in <file path>
Neden oluşturucunuz bağlanmaya çalışıyor değil A? Aynı isimde Renderer'da bir slotum olması gerekiyor mu? Burada
A yuvasının ilanıdır: Buradapublic slots:
void loadDialog();
ve bağlantıları için olduğu gibi
, çoğunlukla QT Creator güvendiğim, ancak buydu düzenlemekTeşekkür
ui_windows.h dosyasında:QObject::connect(pushButton, SIGNAL(clicked()), A, SLOT(loadDialog()));
Bazı şeyleri temizlemeyi umuyorum :)
Ekleme tarihi: – confusedKid
Alt sınıfınıza yeni sinyaller/yuvalar bildirmek istediğinizde, Q_OBJECT makrosunu kullanmanız gerekir –