Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
2-1293992229
v_a_belousov
2011-01-02 21:17
2011.04.03
Работа с изображением


15-1292534993
Юрий
2010-12-17 00:29
2011.04.03
С днем рождения ! 17 декабря 2010 пятница


3-1256201853
Viktor
2009-10-22 12:57
2011.04.03
Как в Access сделать откат


2-1294380604
mefodiy
2011-01-07 09:10
2011.04.03
Разница в представлении данных MySQL.User в D7 и D2010


2-1293223375
Олег Крапивин
2010-12-24 23:42
2011.04.03
Вопрос по (Sender as...)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский