1

ListView があり、行をクリックすると、この行に関する詳細情報を表示する必要があります。私の問題は、信号 clicked() が ListView で機能しないことです。アプリケーションを初期化すると、コンソールに次の出力が表示されます

Object::connect: そのようなシグナルはありません QListView::clicked(index)

Object::connect: (送信者名: 'appointments_list')

そして、連続してクリックしても何も起こりませんでした。

class GUICustomerAppointmentDetail < Qt::Widget

    def initialize (parent = nil, customer = nil)
        super(parent)
        ...     
        @ui.appointments_list.connect(SIGNAL('clicked(index)'), self, SLOT('load_data()')) 
    end

end

予定_リストはQt::ListViewです

交換しました

@ui.appointments_list.connect(SIGNAL('clicked(index)'), self, SLOT('load_data()'))

connect(appointments_list.connect, SIGNAL('clicked(index)'), self, SLOT('load_data()'))

そして私は得る

Object::connect: そのようなシグナルはありません QListView::clicked(index)

Object::connect: (送信者名: 'appointments_list')

オブジェクト::接続: (受信者名: 'customerAppointmentDetail')

また

@ui.appointments_list.connect(SIGNAL('clicked(index)')){ load_data() }

そして私は得る

Object::connect: そのようなシグナルはありません QListView::clicked(index)

Object::connect: (送信者名: 'appointments_list')

お願いします、誰か助けてくれませんか?

4

2 に答える 2

2

何も起こらず、まだ機能していませんが、優れた宝石を見つけてうまく機能しました!

この宝石を使用すると、次のように書くことができます。

appointments_list.clicked.connect { load_data() }
于 2012-06-11T17:45:18.130 に答える
1

この指標は何ですか?Qmodelindexでtypedefしましたか?

試す

@ui.appointments_list.connect(SIGNAL('clicked(QModelIndex&)')){ load_data() }

それ以外の

@ui.appointments_list.connect(SIGNAL('clicked(index)')){ load_data() }
于 2012-05-19T03:43:56.767 に答える