crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QTableWidget, Как програмно реализовать перетаскивание?, Типа Drag-n-Drop, но в коде.
Danila_Bagrofff
  опции профиля:
сообщение 16.4.2009, 12:07
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 16.4.2009
Из: Нижний Новгород
Пользователь №: 690

Спасибо сказали: 0 раз(а)




Репутация:   0  


Есть проблемка: есть 3 виджета:

QTableWidget *tbl = new QTableWidget(10,10,this);
QFrame *frm = new QFrame(this);
QWidget *wdg = new QWidget(frm);

QHBoxLayout *hbl = new QHBoxLayout(frame);
hbl->insertWidget(wdg);

//затем в процессе программы
hbl->removeWidget(wdg);
wdg->setParent(tbl);
tbl->setCellWidget(0,0, wdg);


в процессе программы wdg должен перемещаться между двумя виджетами. Соответственно менять родителя. Лэаут сам тоже устанавливает виджету родителя. То есть у wgt становится родителем frm после команды insertWidget().
есть команда setParent(). Но при смене родителя она ругается.
Если мы перемещаем wdg возникает ошибка:

Цитата
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 25 (X_SendEvent)
Resourse id: .....


Как тогда правильно перемещать виджет между другими?


-----------
Отделено от темы: Шуточный пример
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Danila_Bagrofff
  опции профиля:
сообщение 17.4.2009, 12:32
Сообщение #2


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 16.4.2009
Из: Нижний Новгород
Пользователь №: 690

Спасибо сказали: 0 раз(а)




Репутация:   0  


igor_bogomolov, вы уж извините =) Просто я искал разные пути решения =) И игрался по-всякому, стараясь как-нить обойти =) не получилось.


В итоге, создаю копию нужного мне виджета и уже его размещаю. Увы, видимо, иначе пока сделать нельзя.
Спасибо =)

И не ругайтесь сильно =) не каждый раз натыкаешься на бажки кутэ =)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- Danila_Bagrofff   QTableWidget, Как програмно реализовать перетаскивание?   16.4.2009, 12:07
- - igor_bogomolov   Тут проблема на самом деле в другом. Дело в том, ...   16.4.2009, 13:44
- - igor_bogomolov   Цитата(Litkevich Yuriy @ 16.4.2009, 15:02...   16.4.2009, 14:11
- - Litkevich Yuriy   igor_bogomolov, тут похоже человеку нужно не прост...   16.4.2009, 14:53
- - igor_bogomolov   Судя по его коду, он делает именно смену родителя....   16.4.2009, 14:56
- - Danila_Bagrofff   Да, я хочу перенести виджет, чтобы не дублировать....   17.4.2009, 7:19
- - igor_bogomolov   Да елы палы. Ты вообще читаешь что тебе отвечают. ...   17.4.2009, 8:20
- - Litkevich Yuriy   Цитата(Danila_Bagrofff @ 17.4.2009, 11:19...   17.4.2009, 9:40
- - igor_bogomolov   Цитата(Litkevich Yuriy @ 17.4.2009, 10:40...   17.4.2009, 10:38
- - Danila_Bagrofff   igor_bogomolov, вы уж извините =) Просто я искал р...   17.4.2009, 12:32
- - igor_bogomolov   По этой теме тоже баг репорт написал. Походу не пр...   22.4.2009, 20:51
- - igor_bogomolov   Привет всем. Сообщением выше я писал, ято отправл...   25.4.2009, 0:07
- - Litkevich Yuriy   Перевод: ЦитатаПривет Игорь, Спсибо за сообщение о...   25.4.2009, 0:54
- - igor_bogomolov   Спасибо, Юрий. Можно еще совет спросить. Я может ...   25.4.2009, 1:01
- - Litkevich Yuriy   Цитата(igor_bogomolov @ 25.4.2009, 5:01) ...   25.4.2009, 2:12
- - igor_bogomolov   Вот ответ который я получил ЦитатаHi Igor, Thanks ...   27.4.2009, 17:02


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.4.2024, 14:32