Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по TEdit   Найти похожие ветки 

 
alexvan ©   (2006-08-08 16:25) [0]

Уважаемые мастера! Как в TEdit отследить Event когда при вводе текста содержимое выходит за границу видимости.


 
clickmaker ©   (2006-08-08 16:36) [1]

родителю Edit (Parent) должно придти WM_COMMAND с EN_HSCROLL в старшем слове wParam.
VCLной обертки в виде OnXXX нету


 
Leonid Troyanovsky ©   (2006-08-08 18:31) [2]


> clickmaker ©   (08.08.06 16:36) [1]

> родителю Edit (Parent) должно придти WM_COMMAND с EN_HSCROLL


Ну, это когда карет пытается эмигрировать, IMHO.
А, вообще, сравнивать в OnChange длину введенного с width.

--
Regards, LVT.


 
grisme ©   (2006-08-08 18:36) [3]

Leonid Troyanovsky ©   (08.08.06 18:31) [2]
еще наверняка придется ставить моноширинный шрифт, иначе получится неточное определение,imho да и проще будет


 
Ketmar ©   (2006-08-08 18:38) [4]

> [3] grisme ©   (08.08.06 18:36)

а что, TextWidth() моль побила? %-)


 
grisme ©   (2006-08-08 18:45) [5]

Ketmar ©   (08.08.06 18:38) [4]
воистину не ведал, потому что не юзал...:0) СпасиСа..;0)


 
alexvan ©   (2006-08-09 01:12) [6]

А можно какой-нибудь пример на TextWidth для TEdit - никогда TCanvas не использовал


 
Ketmar ©   (2006-08-09 01:24) [7]

> [6] alexvan ©   (09.08.06 01:12)

TCanvas, f1.


 
alexvan ©   (2006-08-09 01:27) [8]

Благодарствуйте - эта клавиша у меня красным цветом намаркерена


 
alexvan ©   (2006-08-09 01:33) [9]

Дело не в свойствах класса а как это класс к TEdit привязать


 
Ketmar ©   (2006-08-09 01:48) [10]

> [9] alexvan ©   (09.08.06 01:33)

рыть в направлении GetDC().


 
alexvan ©   (2006-08-09 01:53) [11]

Ну хоть на этом спасибо


 
AntiUser ©   (2006-08-09 02:01) [12]

Ketmar ©   (09.08.06 01:48) [10]

А нельзя создать канвас связать фонт и проверить длину?


 
Ketmar ©   (2006-08-09 02:04) [13]

> [12] AntiUser ©   (09.08.06 02:01)

э... кого связать? куда связать? не понял вопроса.


 
AntiUser ©   (2006-08-09 02:39) [14]

Имелось ввиду:

var
 BitMap: TBitMap;
 aTextLength: integer;
begin
 BitMap := TBitMap.Create;
 try
   BitMap.Canvas.Font.Assign(Edit1.Font);
   aTextLength := BitMap.Canvas.TextWidth(Edit1.Text)
 finally
   BitMap.Free;
 end;
end;

А Вами, как я понимаю, предлагался вариант:

var
 DC:HDC;
 aCanvas: TCanvas;
 aTextLength: integer;
begin
 DC := GetDC(Edit1.Handle);
 aCanvas := TCanvas.Create;
 try
   aCanvas.Handle := DC;
   aTextLength := aCanvas.TextWidth(Edit1.Text)
 finally
   ReleaseDC(0, DC);
 end;
end;


Помоему, одна фигня =)


 
AntiUser ©   (2006-08-09 02:43) [15]

Чтобы сразу не запинали. =)
aCanvas.Free; просто забыл.


 
Ketmar ©   (2006-08-09 10:03) [16]

> [14] AntiUser ©   (09.08.06 02:39)

не совсем одна. просто TCanvas "легче" битмапа. а в принципе -- можно и TForm создавать, у неё тоже есть холст и свойство Font. %-)

а я вообще имел в виду вариант "чистого API". %-)



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

Форум: "Основная";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.052 c
1-1155025352
SamProf
2006-08-08 12:22
2006.09.17
Как открыть свойства файла на ftp


15-1156829879
Slider007
2006-08-29 09:37
2006.09.17
Text Image


1-1154929687
KygECHuK
2006-08-07 09:48
2006.09.17
Эмуляция событий мыши


2-1156931290
!aLeXa!
2006-08-30 13:48
2006.09.17
Как рисовать оружность на Canvas?


3-1152534624
Avgust
2006-07-10 16:30
2006.09.17
хм.. неустойчивый коннект..





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