Всем доброго времени суток. Недавно открыл для себя Qt, сижу по-тихоньку ковыряю его. Появился такой вопрос - как получить доступ к элементу формы (пусть будет QTextEdit), находящемся на одной из вкладок?
Алексей1153
12.10.2010, 8:46
а каким образом ты создавал элемент ? Если сам создавал - всегда есть указатель
ASK
12.10.2010, 9:30
Допустим:
QTabWidget *tabs = new QTabWidget; tabs->addTab(new QTextEdit,"New");
Алексей1153
12.10.2010, 9:58
ASK, ну так сохрани указатель - ты его "забыл" А как ты хочешь узначать контрол ещё ? Можно, конечно, какой-нибудь атрибут заполнить. Но ИМХО, лучше мапа зверя нет (когда контролов много)
мап - это std::map то есть
ASK
12.10.2010, 11:06
В развёрнутом виде, оно выглядит примерно так:
QTextEdit *textEdit = new QTextEdit; QTabWidget *tabs = new QTabWidget; int id = tabs->addTab(textEdit,"New");
Я как понимаю, указатель - это id вкладки, который возвращается при вызове tabs->addTab() в данном случае?
Алексей1153
12.10.2010, 12:22
указатель на контрол у тебя
QTextEdit *textEdit
ASK
12.10.2010, 12:37
Ну, с доступом к содержимому QTextEdit проблем нет. Я немного неправильно сформировал вопрос Проблемы с доступом появляются, когда количество закладок, содержащих QTextEdit, больше одной
Алексей1153
12.10.2010, 12:59
ASK, сформулируй основную задачу, а то вариантов может быть много ) Чего гадать то
ASK
12.10.2010, 13:07
Решил ради опыта для начала написать текстовый редактор (наверно многие начинали с этого). С однодокументным режимом всё получилось. Решил реализовать многодокументный режим на базе вкладок (типа NPP и т.д.) - с вкладками разобрался. Вопрос появился - как получить доступ к содержимому тестового поля текущей вкладки (для сохранения текста в файл) Собственно, вся задача))
Алексей1153
12.10.2010, 13:09
ASK, тогда так: создай виджет редактора одного документа. Со всеми нужными контролами. И на каждую вкладку положи один такой виджет. И всё
ASK
12.10.2010, 13:17
Ок, попробую вечерком, спасибо большое
ASK
12.10.2010, 14:01
Спасибо большое, вопрос решён. Просто я не думал, что обращение идёт к экземпляру QTextEdit текущей вкладки.
Алексей1153
12.10.2010, 18:51
какое такое обращение ? Не понимяу.
Цитата(ASK @ 12.10.2010, 17:01)
Группа: Неактивирован
а это ты по ссылке из письма забыл перейти, что ли )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.