ussr-->
Май 23, 2010 20:14:23
Здравствуйте!
У меня возникла проблема. Извините если это действительно просто, но найти решения этой проблемы мне пока не удалось, вот и решил обратиться сюда .
Суть проблемы в том, что мне нужно перехватить сигнал нажатия мышкой на таблицу QTableView. Так же осуществить доступ к данным этой строки. обычным clicked не удается. Видимо в чем то подвох… Из за этого подвоха и обращаюсь сюда..)
apologize828
Май 23, 2010 21:14:31
ussr-->
Здравствуйте!
У меня возникла проблема. Извините если это действительно просто, но найти решения этой проблемы мне пока не удалось, вот и решил обратиться сюда .
Суть проблемы в том, что мне нужно перехватить сигнал нажатия мышкой на таблицу QTableView. Так же осуществить доступ к данным этой строки. обычным clicked не удается. Видимо в чем то подвох… Из за этого подвоха и обращаюсь сюда..)
Вот тебе пример как удалить определенную строку, думаю смысл понятен:
def delete_zapis(self):
row=self.my_form.my_table.currentIndex().row()
index=self.my_form.my_table.model().index(row,0)
id=self.my_form.my_table.model().data(index)
if self.my_form.my_table.currentIndex().row()>=0:
query=QtSql.QSqlQuery()
query.exec("DELETE FROM zapchasty WHERE id=:id")
query.bindValue(":id",id)
query.exec_()
self.refresh_table_zapchasty()
Там уже смотри че тебе надо
ussr-->
Май 23, 2010 22:05:20
apologize828
ussr-->
Здравствуйте!
У меня возникла проблема. Извините если это действительно просто, но найти решения этой проблемы мне пока не удалось, вот и решил обратиться сюда .
Суть проблемы в том, что мне нужно перехватить сигнал нажатия мышкой на таблицу QTableView. Так же осуществить доступ к данным этой строки. обычным clicked не удается. Видимо в чем то подвох… Из за этого подвоха и обращаюсь сюда..)
Вот тебе пример как удалить определенную строку, думаю смысл понятен:
def delete_zapis(self):
row=self.my_form.my_table.currentIndex().row()
index=self.my_form.my_table.model().index(row,0)
id=self.my_form.my_table.model().data(index)
if self.my_form.my_table.currentIndex().row()>=0:
query=QtSql.QSqlQuery()
query.exec("DELETE FROM zapchasty WHERE id=:id")
query.bindValue(":id",id)
query.exec_()
self.refresh_table_zapchasty()
Там уже смотри че тебе надо
Да! То что нужно.. Спсибо большое! Я что то в сигналы уперся, а оказалось все гораздо проще..)
ussr-->
Май 23, 2010 22:49:50
Хотя я щас подумал. В данной задачи мне действительно хватит этого. Но вот ,к примеру, если будет необходимо реагировать на щелчок мыши? ну, к примеру, правой кнопкой на запись таблицы и выводилось контекстное меню. В этом случае как перехватить сигнал? Ни один clicked не подходит(хотя возможно я просто туплю)… Или там нужно использовать другие сигналы или возможно нужно описывать их в ручную?
В общем если не тяжело, поясните пожалуйста.
dartNNN
Май 24, 2010 12:25:04
ussr-->
Ни один clicked не подходит
А чем он вам не подходит? Там же передается как параметр QModelIndex, вот с ним можно много чего сотворить
ussr-->
Май 31, 2010 02:17:21
dartNNN
ussr-->
Ни один clicked не подходит
А чем он вам не подходит? Там же передается как параметр QModelIndex, вот с ним можно много чего сотворить
Да это как раз то что и нужно мне было.. Просто я перехватить сигнал не мог.. Указывал 'clicked(index)“, оказалось нужно просто указать ”clicked(QModelIndex)".:) В общем спасибо все огромное за помощь!