Форум: "Начинающим";
Текущий архив: 2011.04.03;
Скачать: [xml.tar.bz2];
ВнизВопрос по (Sender as...) Найти похожие ветки
← →
Олег Крапивин (2010-12-24 23:42) [0]Доброго времени суток господа.
Подскажите пожалуйста по простому вопросу:
На форме есть несколько компонентов TЕdit и кнопка "Заполнить TEdit.Text". При нажатии кнопки попробовал отловить (Sender as TEdit),
но при проверке оказалось, что Sender указывает на кнопку (что и должно быть). А как мне выйти на компонеты Tedit формы?
Лучше бы ссылочку...
← →
12 © (2010-12-25 00:00) [1]z.b.
for i := 0 to componentscount -1 do
if components[i] is tedit then tedit(components[i]).text := tedit(components[i]).name
← →
Игорь Шевченко © (2010-12-25 00:50) [2]
> А как мне выйти на компонеты Tedit формы?
Edit1
Edit2
...
← →
Eraser © (2010-12-25 01:00) [3]> [0] Олег Крапивин (24.12.10 23:42)
TButtonedEdit
← →
Германн © (2010-12-25 01:02) [4]
> А как мне выйти на компонеты Tedit формы?
Form1.ActiveControl ?
← →
Anatoly Podgoretsky © (2010-12-25 01:19) [5]> Олег Крапивин (24.12.2010 23:42:00) [0]
Кнопку поставь SpeedButton
← →
Германн © (2010-12-25 01:46) [6]Такая "разноплановость" ответов наталкивает на мысль настоятельно посоветовать автору прочитать о "бессмертной Саге о X, Y и Z".
http://www.gunsmoker.ru/2008/10/x-y-z.html
← →
Anatoly Podgoretsky © (2010-12-25 02:14) [7]> Германн (25.12.2010 01:02:04) [4]
В случае TButton это TButton
← →
Германн © (2010-12-25 02:36) [8]
> Anatoly Podgoretsky © (25.12.10 02:14) [7]
>
> > Германн (25.12.2010 01:02:04) [4]
>
> В случае TButton это TButton
>
Т.е. "Телепатор" ты заранее отказался включать?
← →
KSergey © (2010-12-25 12:47) [9]Я не понял что надо отловить собственно.
Хотя ответ "поставь SpeedButton" наталкивает на мысль, что необходим активный Edit "в момент" нажатия кнопки?
← →
_Юрий (2010-12-25 14:59) [10]активным может быть только один винконтрол
а кнопку, она и становится активной
чтобы этого не происходило, надо использовать кнопку, которая вин-контролом не является - например SpeedButton
тогда активным продолжает оставаться эдит
← →
_Юрий (2010-12-25 15:00) [11]а кнопку = а когда нажимают кнопку
← →
Дмитрий С © (2010-12-25 17:32) [12]Как вариант сделать переменную в классе формы:
FLastFocusedEdit:TEdit.
У всех едитов на форме обработать onEnter, где сделать
FLastFocusedEdit:=Sender as TEdit;
А при нажатии на кнопку
if assigned(FLastFocusedEdit) then
FLastFocusedEdit.text := "...."
← →
Leonid Troyanovsky © (2010-12-25 22:55) [13]
> _Юрий (25.12.10 14:59) [10]
> вин-контролом не является - например SpeedButton
> тогда активным продолжает оставаться эдит
Можно и TButton with Default=True.
Если, конечно, жать через Enter.
--
Regards, LVT.
← →
Leonid Troyanovsky © (2010-12-25 22:58) [14]
> Дмитрий С © (25.12.10 17:32) [12]
> Как вариант сделать переменную в классе формы:
Лучше сделать каждому Edit пункт контекстного меню
или action c горячей клавишей.
--
Regards, LVT.
← →
Олег Крапивин (2010-12-28 13:12) [15]
> 12 © (25.12.10 00:00) [1]
> z.b.for i := 0 to componentscount -1 doif components[i]
> is tedit then tedit(components[i]).text := tedit(components[i]).
> name
Спасибо 12! Единственное, что подошло.
Пробовал вариант от Дмитрия [12], что-то не получилось.
← →
Юрий Зотов © (2010-12-28 13:28) [16]А лучше всего - [3]. И никаких проблем ни у программиста, ни у юзера.
← →
Leonid Troyanovsky © (2010-12-28 18:54) [17]
> Олег Крапивин (28.12.10 13:12) [15]
> Спасибо 12! Единственное, что подошло.
Иное испытывалось (понято было) плохо.
> Пробовал вариант от Дмитрия [12], что-то не получилось.
Remember: потерять фокус легко, а возвратить - сложно.
Особенно, по молодости.
--
Regards, LVT.
← →
Олег Крапивин (2011-01-02 10:57) [18]
> > Пробовал вариант от Дмитрия [12], что-то не получилось.
> Remember: потерять фокус легко, а возвратить - сложно.Особенно,
> по молодости.
Какая молодость???!!!! Мне через три года полтинник!!!
С наступившим Новым годом Вас и всех присутствующих!
Здоровья всем и сил, терпения со всеми кто знает систему менее глубоко
чем вы.
Это любопытно http://citforum.ru/gazeta/165/ , тигры Лиспа впереди!
Опять концепцию написания программ менять?
Это в конференцию прочее
← →
Leonid Troyanovsky © (2011-01-02 18:59) [19]
> Олег Крапивин (02.01.11 10:57) [18]
> > по молодости.
>
> Какая молодость???!!!! Мне через три года полтинник!!!
Поэтому так и говорят: береги фокус с молодости.
--
Regards, LVT.
← →
Студент (2011-01-09 06:35) [20]
> На форме есть несколько компонентов TЕdit и кнопка "Заполнить
> TEdit.Text".
А как Edit"ы создаются - DisignTime? Их количество и имена постоянны? Который из Edit нужно заполнить при нажатии кнопки - все?
Может просто подряд?
Procedure TForm1.OnButton1Click(...);
Begin
Edit1.Text:="one";
Edit2.Text:="two";
Edit3.Text:="three";
...
End;
> Поэтому так и говорят: береги фокус с молодости.
:D
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.04.03;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.004 c