Название: Обращение к динамически созданному виджету Отправлено: Az от Май 24, 2010, 19:48 Коллеги, подскажите, как можно обратиться к динамически созданному ComboBox.
Создаю его с помощью setItemWidget, и встраиваю в одну колонку QTreeWidget следующим образом: Код Пытался добраться до него через Код но дальше дело не пошло. При этом Код скрывает, и скрывает именно сам ComboBox, то есть до него вроде как доходит. Название: Re: Обращение к динамически созданному виджету Отправлено: Makss от Май 24, 2010, 20:06 Код: ((QComboBox *)ui->treeWidget->itemWidget(item, 0))->setVisible(false); Название: Re: Обращение к динамически созданному виджету Отправлено: bigirbis от Май 24, 2010, 20:56 Во-первых стоит пользоваться оператором dynamic_cast.
Во вторых, для таких особых случаев стоит изучить работу делегатов. Название: Re: Обращение к динамически созданному виджету Отправлено: Az от Май 24, 2010, 21:34 Спасибо за ответы.
Есть над чем по-мыслить. Название: Re: Обращение к динамически созданному виджету Отправлено: garryHotDog от Май 24, 2010, 21:46 лично я использую код который представил - Makss
Название: Re: Обращение к динамически созданному виджету Отправлено: ритт от Май 24, 2010, 22:01 dynamic_cast? c-style cast?
Makss, bigirbis, garryHotDog - каждому по двойке. забудьте эту чушь, когда оперируете экземплярами QObject! QComboBox *combo = qobject_cast<QComboBox *>(ui->treeWidget->itemWidget(item, 0)) if (combo) ... и только так! Название: Re: Обращение к динамически созданному виджету Отправлено: bigirbis от Май 24, 2010, 22:29 :-X Согласен по поводу qobject_cast - конкретно лажанулся.
Название: Re: Обращение к динамически созданному виджету Отправлено: radislav72 от Май 26, 2010, 07:49 забудьте эту чушь, когда оперируете экземплярами QObject! ... и только так! А почему так категорично? Тут такая серьезная ошибка, или просто отступление от "оптимального" варианта кода? Название: Re: Обращение к динамически созданному виджету Отправлено: Amigo_sa от Май 26, 2010, 10:03 Во-первых стоит пользоваться оператором dynamic_cast. Для наследников QObject предпочтительнее object_cast.Во вторых, для таких особых случаев стоит изучить работу делегатов. Название: Re: Обращение к динамически созданному виджету Отправлено: Alex Custov от Май 26, 2010, 13:18 |