Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2009, 15:09   #1
Detka
Чайник :D
Пользователь
 
Регистрация: 22.12.2006
Сообщений: 65
Счастье Фокус для Edit'a

Я прошу прощения за наивный вопрос, но что-то поиск по форуму меня не привел к нужному результату. А вопрос такой: как заставить Edit всё время быть в фокусе? Ну я делаю калькулятор, когда мышкой кнопки на форме нажимаешь, фокус теряется. А я хочу что был )))

ЗЫ Не советуте только пожалуйста по нажатию каждой кнопки программно передавать фокус эдиту. Это слишком много.

ЗЫЫ Может заодно расскажите как научить мою прогу воспринимать +-*/ не текстом а действием...
Мы все учились по-немногу
Чему-нибудь и как-нибудь...

Пушкин А.С.
Detka вне форума Ответить с цитированием
Старый 10.02.2009, 15:51   #2
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Можете сделать так:
Код:
Procedure TForm1.Edit1Change(Sender: TObject);
Begin
Edit1.SetFocus;
End;
Цитата:
ЗЫЫ Может заодно расскажите как научить мою прогу воспринимать +-*/ не текстом а действием...
Расскажите пожалуйста по подробней, что именно у вас не получается?
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 10.02.2009, 15:56   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Не советуте только пожалуйста по нажатию каждой кнопки программно передавать фокус эдиту. Это слишком много.
Эт еще почему? Определи одно событие для всех кнопок и в нем фокус в эдит кидай или поставь KeyPreview в true и пропиши передачу фокуса Эдиту в OnKeyPress формы.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.02.2009, 16:07   #4
Detka
Чайник :D
Пользователь
 
Регистрация: 22.12.2006
Сообщений: 65
По умолчанию

Цитата:
Сообщение от Terran Посмотреть сообщение
Можете сделать так:
Код:
Procedure TForm1.Edit1Change(Sender: TObject);
Begin
Edit1.SetFocus;
End;
Я так пробовала. Получается следущее: если вводить цифры мышкой в эдите выделяется текст, а если с клавы - не выделяется. Но фокус все равно не "приходит"
Мы все учились по-немногу
Чему-нибудь и как-нибудь...

Пушкин А.С.
Detka вне форума Ответить с цитированием
Старый 10.02.2009, 16:12   #5
Detka
Чайник :D
Пользователь
 
Регистрация: 22.12.2006
Сообщений: 65
По умолчанию

Цитата:
Цитата:
ЗЫЫ Может заодно расскажите как научить мою прогу воспринимать +-*/ не текстом а действием...
Расскажите пожалуйста по подробней, что именно у вас не получается?
http://www.programmersforum.ru/showt...EB%E0%E2%E8%F8 тут уже спрашивали то же самое на Си. Как мне теперь такое в Делфи реализовать?
Мы все учились по-немногу
Чему-нибудь и как-нибудь...

Пушкин А.С.
Detka вне форума Ответить с цитированием
Старый 10.02.2009, 16:20   #6
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
Сообщение от Detka Посмотреть сообщение
http://www.programmersforum.ru/showt...EB%E0%E2%E8%F8 тут уже спрашивали то же самое на Си. Как мне теперь такое в Делфи реализовать?
Что бы много не писать выложу вам исходничёк простенького калькулятора, который когда то скачал с форума: Калькулятор.rar Посмотрите как он реализован. Там всё просто.
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 10.02.2009, 16:23   #7
Detka
Чайник :D
Пользователь
 
Регистрация: 22.12.2006
Сообщений: 65
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
или поставь KeyPreview в true и пропиши передачу фокуса Эдиту в OnKeyPress формы.
У меня тогда не учитывается нажатие первой клавиши. Т.е. я жму, например 654, а эдит отображает только 54.

И как правильно передать ему фокус, ну чтоб не выделялся текст, а просто эдит был всегда активным?

Цитата:
Сообщение от Terran Посмотреть сообщение
Что бы много не писать выложу вам исходничёк простенького калькулятора
Так там не работает то что мне нужно! Ну запустите виндовский калькулятор: 1. данные можно вводить с клавы и мышкой, при этом курсор всегда в эдите (или как там его); 2. Клавиши + - * / вводимые с клавиатуры выполняют соответствующие действия (а у меня вводят текст "+", "-" и т.д.)
Мы все учились по-немногу
Чему-нибудь и как-нибудь...

Пушкин А.С.

Последний раз редактировалось Stilet; 10.02.2009 в 16:33.
Detka вне форума Ответить с цитированием
Старый 10.02.2009, 16:29   #8
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
И как правильно передать ему фокус, ну чтоб не выделялся текст, а просто эдит был всегда активным?
Так же можете попробовать такой вариант:
Код:
Edit1.SetFocus;
Edit1.SelStart:=Edit1.SelLength;
Цитата:
Так там не работает то что мне нужно! Ну запустите виндовский калькулятор: 1. данные можно вводить с клавы и мышкой, при этом курсор всегда в эдите (или как там его); 2. Клавиши + - * / вводимые с клавиатуры выполняют соответствующие действия (а у меня вводят текст "+", "-" и т.д.)
Код:
Edit1.ReadOnly:=True;
Всегда рад помочь!

Последний раз редактировалось Terran; 10.02.2009 в 16:32.
Terran вне форума Ответить с цитированием
Старый 10.02.2009, 16:33   #9
Detka
Чайник :D
Пользователь
 
Регистрация: 22.12.2006
Сообщений: 65
По умолчанию

Edit1.SelStart:=Edit1.SelLength;

гы-гы-гы... теперь он цифры пишет наоборот - справа на лево :D
Мы все учились по-немногу
Чему-нибудь и как-нибудь...

Пушкин А.С.
Detka вне форума Ответить с цитированием
Старый 10.02.2009, 16:34   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Detka
Код в студию и желательно полный.
Или проект прикрепи.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отправка данных с edit'a на e-mail фЁдОр Помощь студентам 9 08.12.2011 21:09
Фокус на компонент Altera Компоненты Delphi 3 15.06.2008 10:51
Фокус окна Лёка Общие вопросы Delphi 11 28.01.2008 22:30
Фокус формы Stanislav Общие вопросы Delphi 4 15.11.2007 21:57
Фокус? AlexandrDel Помощь студентам 3 17.12.2006 01:54