![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Везде в источниках описан вызов функции, но нигде нет описания, как внутри функции обратиться к элементу формы (фрейма). Например, нужно чтобы при нажатии кнопки формы менялось значение поля формы. Пытаюсь сделать так, но пишет, что у MyFrame нет аргумента t1. Подскажите, пожалуйста, чего не хватает.
Это сообщение отредактировал(а) proDiva - 19.9.2006, 17:13 |
|||
|
||||
| setq |
|
|||
|
Unregistered |
Потому что в конструкторе надо писать self.t1=wx.TextCtrl(panel)
|
|||
|
||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Я так и знала! В смысле, что упускаю какую-то мелочь))) Спасибо большое, из-за такого пустяка затормозилась громадная программа
|
|||
|
||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Еще одна проблема с теми же фреймами. Ситуация такая: на одном фрейме кнопка, событие вызывает другой фрейм, на котором еще одна кнопка. Так вот событие последней кнопки должно возвращать значение переменной в поле первого фрейма. Т.е. значение tmp должно вписаться в поле self.mroj. Что нужно дописать?
|
|||
|
||||
| ser_gen |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 25 Регистрация: 25.9.2006 Репутация: 1 Всего: 1 |
По моему можно так:
А потом в обработцике нажатия в первой форме забрать это значение
|
||||
|
|||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Не срабатывает, так я уже пробовала. Пишет, что у FrameAdres нет атрибута tmp.
|
|||
|
||||
| setq |
|
|||
|
Unregistered |
Я не wx-хакер и не знаю как это правильно должно делаться, но есть 2 плохие идеи: передать первый фрейм в конструктор другого фрейма и использовать глобальную переменную. Но теоретически наверно ещё возможно постить во втором фрейме событие, которое будет ловить первый фрейм.
|
|||
|
||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
||||
|
||||
| _Viper_ |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 8.11.2006 Репутация: 10 Всего: 11 |
Не срабатывает, потому что этот атрибут создаёться, только после того как пользователь нажмёт на ОК. А использовать ты его пытаешься сразу после вывода фрейма. Самое простое, пожалуй, это наследовать FrameAdres не от wx.Frame, а от wx.Dialog и использовать ShowModal вместо Show. Тогда выполнение продолжиться только после закрытия FrameAdres. |
|||
|
||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Это я пыталась сделать в первую очередь, я имею в виду диалог. Но проблема упирается в то, что у меня должно быть в диалоге с десяток полей, а результатом должна быть строка из данных со всех этих полей. Это реализовать тоже не получилось. |
|||
|
||||
| _Viper_ |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 8.11.2006 Репутация: 10 Всего: 11 |
Правильно, диалог возвращает на какую кнопку нажал юзер, а значения полей надо получать через атрибуты этого диалога. Вот примерчик, надеюсь что поможет
|
||||
|
|||||
| proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
_Viper_, как раз то, что мне нужно. Спасибо!
|
|||
|
||||
| _Viper_ |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 8.11.2006 Репутация: 10 Всего: 11 |
proDiva, пожалуйста. Рад, что смог помочь.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |