Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как убрать фокус с кнопки, при запуске программы 
:(
    Опции темы
kent
Дата 17.9.2005, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Как убрать фокус с кнопки, т. е. когда я запускаю программу фокус сразу же прорисовывается
на кнопке, как его можно убрать при запуске программы...
PM MAIL ICQ   Вверх
Payne
Дата 17.9.2005, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Детектив
*


Профиль
Группа: Участник
Сообщений: 247
Регистрация: 6.4.2005
Где: Петербург

Репутация: 4
Всего: 10



Следующий кусок кода должен помочь:

Код

procedure TForm1.FormCreate (sender: TObject);
begin
  Button1.ControlState := [csFocusing]
end;


Это сообщение отредактировал(а) Payne - 17.9.2005, 13:17
PM MAIL WWW ICQ Skype   Вверх
Quadr0
Дата 17.9.2005, 12:45 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:29
  Вверх
kent
Дата 17.9.2005, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Объявил процедуру в классах, написал в исполнении, но почему то не запускается - выдает Error ->Expected '=' but '(' found
Добавлено @ 13:08
Как правильно её оформить в модуле?
PM MAIL ICQ   Вверх
Payne
Дата 17.9.2005, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Детектив
*


Профиль
Группа: Участник
Сообщений: 247
Регистрация: 6.4.2005
Где: Петербург

Репутация: 4
Всего: 10



2QuadrO:
Но почему-то первый вариант снимает фокус, а твой - наоборот, не снимает.
Для примера я поставил на форме label, а в обработке нажатия кнопки написал:

Код

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption := 'Кнопка нажата';
end;

Юзая свой вариант, я удостоверился, что при нажатии Enter при запуске программы, надпись не появляется, т.е. на кнопке фокуса нет. При использовании же твоего варианта нажимаем Enter и надпись появляется, т.е. фокус на кнопке.
Да, и извините за ошибку - не csFocused, а csFocusing. Без обид, но сначала проверяй код, как он работает...
PM MAIL WWW ICQ Skype   Вверх
Poseidon
Дата 17.9.2005, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



kent
1) Код в студию!
2) Один топик, один вопрос!


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
kent
Дата 17.9.2005, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Разобрался я с оформлением, но это не то что нужно, надо чтобы не после ентера фокус снимался, а сразу же после запуска программы...
PM MAIL ICQ   Вверх
Akella
Дата 17.9.2005, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Код

Button1.Default := False;

PM MAIL   Вверх
kent
Дата 17.9.2005, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Цитата(dsergey @ 17.9.2005, 13:41)
Код

Button1.Default := False;

Попробовал и твой вариант все равно фокус не снимается.... smile
PM MAIL ICQ   Вверх
Poseidon
Дата 17.9.2005, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



kent, тебе уже дали ответ!

Цитата(Payne @ 17.9.2005, 12:27)
Код

procedure TForm1.FormCreate (sender: TObject);
begin
  Button1.ControlState := [csFocusing]
end;




--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
kent
Дата 17.9.2005, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Цитата(Poseidon @ 17.9.2005, 13:54)
kent, тебе уже дали ответ!

Цитата(Payne @ 17.9.2005, 12:27)
Код

procedure TForm1.FormCreate (sender: TObject);
begin
  Button1.ControlState := [csFocusing]
end;

Так я его пробовал, не помогает...
PM MAIL ICQ   Вверх
FRAGNATIC
Дата 17.9.2005, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: 6
Всего: 11



а трудно при создании формы фокус передать другому контролу типа
Form1.SetFocusedControl()
PM MAIL   Вверх
Poseidon
Дата 17.9.2005, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(kent @ 17.9.2005, 13:57)
не помогает...
Плохо значит пробовал! Мне помогает, Payne помогает, а тебе не помогает! Это как? Или хочешь что-то не то, что написал!


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
FRAGNATIC
Дата 17.9.2005, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: 6
Всего: 11



или Button2.SetFocus;
Добавлено @ 14:03
Цитата
Button1.ControlState := [csFocusing]

и мне помогает) ток этот код не оч прикольный в том плане что после него кнопка ваще фокус не сохроняет)))))
но в томже оброботчике нажатия кнопки это мона подправить)))
PM MAIL   Вверх
kent
Дата 17.9.2005, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Цитата(Poseidon @ 17.9.2005, 14:00)
[/QUOTE] Плохо значит пробовал! Мне помогает, Payne помогает, а тебе не помогает! Это как? Или хочешь что-то не то, что написал!

Все пробовал как надо можешь сам убедиться, см. аттач...

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  Calculator.rar 32,25 Kb
PM MAIL ICQ   Вверх
Poseidon
Дата 17.9.2005, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Ну и где в твоем аттаче ЭТО?

Вот, лови:


PS. Каждый програмvист должен написать свой калькулятор smile


Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  Calculator.rar 33,58 Kb


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
kent
  Дата 17.9.2005, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



У меня было написано:
Код

procedure TMainForm.MainFormCreate (sender: TObject);
begin
     ZeroBitBtn.ControlState := [csFocusing] ;
end;

ты дописал ещё:
Код

procedure TMainForm.FormCreate(Sender: TObject);
begin
ZeroBitBtn.ControlState := [csFocusing];
end;

и фокус пропал.... smile
Спасибо за помошь, но я не пойму в чем разница между первой и второй процедурой....

Это сообщение отредактировал(а) kent - 17.9.2005, 15:03
PM MAIL ICQ   Вверх
kent
Дата 17.9.2005, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Спасибо всем кто помогал!!! smile
PM MAIL ICQ   Вверх
kent
  Дата 17.9.2005, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 6.5.2005
Где: Russia

Репутация: нет
Всего: 1



Цитата(kent @ 17.9.2005, 15:01)
У меня было написано:
Код

procedure TMainForm.MainFormCreate (sender: TObject);
begin
     ZeroBitBtn.ControlState := [csFocusing] ;
end;

ты дописал ещё:
Код

procedure TMainForm.FormCreate(Sender: TObject);
begin
ZeroBitBtn.ControlState := [csFocusing];
end;

и фокус пропал.... smile

Терь я догнал что разницы никакой нет, если процедура:
Код

procedure TMainForm.MainFormCreate (sender: TObject);

то надо в файле .dfm дописать строчку
Код

OnCreate = MainFormCreate

А если:
Код

procedure TMainForm.FormCreate(Sender: TObject);

то пишем там
Код

OnCreate = FormCreate

smile
PM MAIL ICQ   Вверх
Payne
Дата 17.9.2005, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Детектив
*


Профиль
Группа: Участник
Сообщений: 247
Регистрация: 6.4.2005
Где: Петербург

Репутация: 4
Всего: 10



Цитата(kent @ 17.9.2005, 14:46)
Спасибо всем кто помогал!!!

Надеемся, что разобрался smile .
И... всегда пожалуйста!
PM MAIL WWW ICQ Skype   Вверх
Quadr0
Дата 17.9.2005, 22:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:30
  Вверх
Payne
Дата 18.9.2005, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Детектив
*


Профиль
Группа: Участник
Сообщений: 247
Регистрация: 6.4.2005
Где: Петербург

Репутация: 4
Всего: 10



Quadr0, хм, возможно... Нужно будет в этом лучше разобраться smile .
PM MAIL WWW ICQ Skype   Вверх
Akella
Дата 19.9.2005, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



smile ДА, ПРОСТО НУЖНО БЫЛО НА ВСЕХ КНОПКАХ ПОСТАВИТЬ TABSTOP := FALSE
PM MAIL   Вверх
Poseidon
Дата 19.9.2005, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



dsergey, точно smile
Все гениальное просто smile


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1484 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.