Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.10.2008, 20:07
Михалыч Михалыч вне форума
Начинающий
 
Регистрация: 08.09.2008
Сообщения: 142
Репутация: 15
По умолчанию Подсветка Edit

Имеется несколько Edit. Как сделать чтобы те поля, в кот. находится курсор подсвечивались другим цветом, но при переходе с поля на поле предыдущее становилось стандартного цвета? Спасибо.
Ответить с цитированием
  #2  
Старый 16.10.2008, 22:29
Аватар для Sharky
Sharky Sharky вне форума
Активный
 
Регистрация: 20.03.2007
Сообщения: 202
Репутация: 10
По умолчанию Вроде очень просто

если я правильно тебя понял то так. Раскажу тока схематично.
Код:
procedure TForm1.Edit1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  begin
   твоя картинка типа подсветка := визибл; 
  end;

Последний раз редактировалось Sharky, 16.10.2008 в 22:34.
Ответить с цитированием
  #3  
Старый 16.10.2008, 22:46
Михалыч Михалыч вне форума
Начинающий
 
Регистрация: 08.09.2008
Сообщения: 142
Репутация: 15
По умолчанию

Нет.
Надо типа

procedure TForm1.Edit3Enter(Sender: TObject);
begin
with Sender as TEdit do
Font.Color:=clRed;
end;


procedure TForm1.Edit3Exit(Sender: TObject);
begin
with Sender as TEdit do
Font.Color:=clWindowText;
end;

только в данном случае цвет шрифта в полях ввода меняется на красный в Edit, в которых находится курсор, а нужно тоже самое только чтобы цвет шрифта к примеру был черный, а менялся цвет заливки активного (т.е. в кот. находится курсор) Edita.
Ответить с цитированием
  #4  
Старый 16.10.2008, 23:59
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А Edit.Color := clчто-то-там не пробовал?
Ответить с цитированием
  #5  
Старый 17.10.2008, 01:03
Михалыч Михалыч вне форума
Начинающий
 
Регистрация: 08.09.2008
Сообщения: 142
Репутация: 15
По умолчанию

Пробовал, не работает. А если поставить к примеру Edit1.Color := clRed, тогда только поле Edit1 становиться красным, и то при переходе к полю Edit2 оно так красным и остается.
Ответить с цитированием
  #6  
Старый 17.10.2008, 07:37
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
Восклицание

Если не ошибаюсь Edit1.Color := clRed работает только при стандартной теме оформления Windows, также как и Label1.Color := clRed и т. п.
Ответить с цитированием
  #7  
Старый 17.10.2008, 07:44
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
Восклицание

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var
I:Integer;
Temp: TComponent;
begin
for I:=0 to ComponentCount-1 do
begin
Temp := Components[i];
if (Temp is TEdit) then
begin
if (Temp as TEdit).Focused then
(Temp as TEdit).Color := clRed else
(Temp as TEdit).Color := clWindow;
end;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Interval:=100;
Application.ProcessMessages;
end;
Ответить с цитированием
  #8  
Старый 17.10.2008, 08:18
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Код:
procedure TForm1.Edit1Enter(Sender: TObject);
begin
  TEdit(Sender).Color := clRed;
end;

procedure TForm1.Edit1Exit(Sender: TObject);
begin
  TEdit(Sender).Color := clWindow;
end;
Процедуру Edit1Enter присвоить свойству OnEnter и всем другим Edit'ам, в которых нужен эффект, помимо того компонента, в котором эта процедура создана. Также и Edit1Exit присвоить свойствам OnExit всем другим Edit'ам. Цветовая схема не влияет - эффект будет в любом случае.
__________________
Не забывайте делать резервные копии
Ответить с цитированием
  #9  
Старый 17.10.2008, 21:04
Михалыч Михалыч вне форума
Начинающий
 
Регистрация: 08.09.2008
Сообщения: 142
Репутация: 15
По умолчанию

То что и нужно было, спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:11.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025