【问题标题】:clicked() Signal for QListViewQListView 的 clicked() 信号
【发布时间】:2012-05-18 23:52:25
【问题描述】:

我有一个 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

appointments_list 是一个 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')

Object::connect:(接收方名称:'customerAppointmentDetail')

还有

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

我明白了

Object::connect: 没有这样的信号 QListView::clicked(index)

Object::connect:(发件人姓名:'appointments_list')

请问,谁能帮帮我?

【问题讨论】:

    标签: ruby qt listview signals click


    【解决方案1】:

    什么都没有发生,仍然无法正常工作,但我找到了 excellent gem 并且效果很好!

    这颗宝石让我可以写:

    appointments_list.clicked.connect { load_data() }
    

    【讨论】:

      【解决方案2】:

      这个索引是什么?你是用 Qmodelindex typedef 的吗?

      试试

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

      而不是

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

      【讨论】:

      • 我得到同样的错误: Object::connect: No such signal QListView::clicked(Qt::ModelIndex&) Object::connect: (sender name: 'appointments_list')
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-14
      • 2021-06-16
      相关资源
      最近更新 更多