Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.19;
Скачать: CL | DM;

Вниз

Эдит энабле:=фалсе, как сделать фонт цветом, как в труе?   Найти похожие ветки 

 
vegarulez ©   (2007-07-15 14:48) [0]

привет всем мастерам!
У меня такой вопрос, допустим на форме имеется эдит, когда он становится фалсе, меняется цвет текста немного, с чёрного, на несовсем чёрный, как сделать чтобы он даже когда фалсе был чёрным?


 
Kolan ©   (2007-07-15 15:00) [1]

> Эдит энабле:=фалсе, как сделать фонт цветом, как в труе?

Сделать Енэйбл Тру, и РидОнли = Тру.


 
vegarulez ©   (2007-07-15 17:50) [2]

не... так не канает... потому как едит мышкой мона выделить... а мне нужно, чтобы его нельзя было мышкой выделить....


 
vegarulez ©   (2007-07-15 18:02) [3]

ну или поканает как ты написал... но тогда как сделать чтоб мышой незя было эдит выделять?


 
Kolan ©   (2007-07-15 18:02) [4]

> а мне нужно, чтобы его нельзя было мышкой выделить&#133

Ну вот и не мучь пользователя, который за 15 лет уже привык, что если контрол недоступен, то он серый и текст в нем серый и не майся фигнёй.
Или опеши задачу полностью, возможно есть нормальное решение&#133


 
Kolan ©   (2007-07-15 18:09) [5]

> но тогда как сделать чтоб мышой незя было эдит выделять

Тут поподробее бы — что значит «выделять».


 
{RASkov} ©   (2007-07-15 19:04) [6]

> [0] vegarulez ©   (15.07.07 14:48)

Положи его (Эдит) на контейнер, а контейнеру делай Енабле=фалсе....(TPanel например).

> [2] vegarulez ©   (15.07.07 17:50)

Тебе нужен Label или лучше Статик с белым фоном....


 
antonn ©   (2007-07-15 19:16) [7]


> Тебе нужен Label или лучше Статик с белым фоном....

а как в нем привычным образом редактировать написанное?


 
{RASkov} ©   (2007-07-15 19:21) [8]

> [7] antonn ©   (15.07.07 19:16)
> > Тебе нужен Label или лучше Статик с белым фоном....
>
> а как в нем привычным образом редактировать написанное?


[0]> как сделать чтобы он даже когда фалсе был чёрным?

А здесь как? :) Не надо ему походу его редактировать привычным образом....
Только вместо белого фона, нужно clWindow.... у меня просто белый, а про других я не подумал... )


 
antonn ©   (2007-07-15 19:43) [9]


> {RASkov} ©   (15.07.07 19:21) [8]

не надо прикидываться, речь шла про Эдит %)


 
Zagaevskiy ©   (2007-07-15 20:14) [10]


>
> Положи его (Эдит) на контейнер, а контейнеру делай Енабле=фалсе.
> ...(TPanel например).

Самое правильное решение


 
{RASkov} ©   (2007-07-15 20:17) [11]

> не надо прикидываться, речь шла про Эдит %)

Ну я вообще-то и про Эдит рассказывал… :)

Можно конечно и, примерно, так "извернуться":
type
 TMyEdit = class(TEdit)
 private
   procedure WMPaint(var Message: TWMPaint); message WM_PAINT;
 end;
..........

procedure TMyEdit.WMPaint(var Message: TWMPaint);
var Cnv: TControlCanvas;
begin
 inherited;
 if not Enabled then begin
  Cnv:=TControlCanvas.Create;
  Cnv.Control:=Self;
  Cnv.Font.Assign(Font);
  Cnv.FillRect(ClientRect);
  Cnv.TextOut(1, 1, Text+" (disable)");
  Cnv.Free;
 end;
end;


 
Alal ©   (2007-07-16 21:14) [12]

а если так:

procedure TForm1.ApplicationEvents1Idle(Sender: TObject;
 var Done: Boolean);
begin
 if Form1.ActiveControl=Edit1 then Edit1.Enabled:=false
   else Edit1.Enabled:=true;
end;


 
Dib@zol ©   (2007-07-16 22:05) [13]

А мож поставить самопальный обработчик на WM_CTLCOLOREDIT? Если IsWindowEnabled(edit1.Handle)="фалсе", то рисуемся всёравно COLOR_WINDOW"ом и COLOR_WINDOWTEXT"ом.


 
evvcom ©   (2007-07-17 10:11) [14]


> Alal ©   (16.07.07 21:14) [12]

:-)
твой код записывается гораздо проще:
Edit1.Enabled := Form1.ActiveControl = Edit1;
учи булеву алгебру

> Самое правильное решение

Самое правильное - фигней не страдать, не сбивать никого с толку. Я иногда наоборот хочу, чтобы в задизэйбленном едите можно было текст выделить и в буфер. Вот тогда меняю ReadOnly и Color. Цвет шрифта оставляю как есть, т.е. черный, тогда видно, что от Enabled := False стиль отличается, и есть желание его щелкнуть тогда.


 
alal ©   (2007-07-17 21:22) [15]


> evvcom ©

Спасибо. Я раньше не знал, что так можно. Только
edit1.Enabled:=form1.ActiveControl<>edit1;
Тогда текст будет черным это именно то, чего хотел vegarulez ©.


 
vegarulez ©   (2007-07-20 07:32) [16]

Псп, попробую.



Страницы: 1 вся ветка

Текущий архив: 2007.08.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.07 c
15-1184924724
Ega23
2007-07-20 13:45
2007.08.19
Рыдал... :)))))


2-1185113973
Гость_1
2007-07-22 18:19
2007.08.19
проблема с числами или у меня :)


3-1178186695
Slider007
2007-05-03 14:04
2007.08.19
Интерфейс для создания документа


2-1184704624
DenIK
2007-07-18 00:37
2007.08.19
Ошибка...помогите


15-1184845462
db2admin
2007-07-19 15:44
2007.08.19
Помогите составить список литературы пожалуйста, для начинающих





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский