LINUX.ORG.RU

c++/qt4: как обратиться к переменной, зная её имя в переменной QString (аналог $$string на C++)???


0

0

Здравствуйте! Есть необходимость обратиться к переменной (виджету), но я знаю только её имя, которое хранится в QString. На php я бы сделал так - $$name - и нет проблем. А как поступить в си?

anonymous

скорее всего - забей

Эт сильно нетривиальная задача на С/С++ и особенно при юзании Qt

cvv ★★★★★
()
Ответ на: комментарий от Reset

впринципе ты прав если он сможет его заполнить, вернее если знает все имена переменных которые впринципе могут потребоватся, я исходил из соображений что он их незнает

cvv ★★★★★
()
Ответ на: комментарий от Pi

а владелец виджета, известен?
тогда можно сначала для каждого создаваемого виджета, к которому собираешься обращаться по имени установить 

QWidget *parent;
...
QWidget *widget = new QWidget(parent);
widget->setObjectName("name");

а затем

parent->findChild<QWidget*>("name");

кстати, виджетам, создаваемые через designer автоматически устанавливается их имя в objectName.

как я понимаю, это нужно т. к. виджеты создаются динамически во время исполнения, и их нужно как-то идентифицировать?

Deleted
()

Язык - это на 90% способ мышления. Пишешь на php думай как программист на php, пишешь на C++ думай как парограммист на C++.

KIV
()
Ответ на: комментарий от Deleted

inline! спасибо огромное, это то, что нужно!

а про то, что на чем думаешь - где-то читал, что думать надо на русском языке - это развивает и навыки программирования и общую культуру

anonymous
()

в С++ нет полноценного рефлекшена, есть тока RTTI, так что забей, средствами языка никак

s0L
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.