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

Вниз

проблемы с hint ом   Найти похожие ветки 

 
Deus   (2002-05-12 01:16) [0]

В программе создаю hint window и показываю его справа внизу следующей процедуркой:
procedure showhint(t:string);
var
DeskTop:TCanvas;
x:trect;
hx:trect;
h:hwnd;
begin
h:=findwindow("Shell_TrayWnd",NIL);
if h=0 then exit;
GetWindowRect(h,x);
xx:=thintwindow.create(form1);
hx:=xx.CalcHintRect(300,t,nil);
hx.Top:=x.top-Canvas.TextHeight(t)-4;
hx.left:=x.right-Canvas.TextWidth(t)-10;
hx.Right:=x.right;
hx.Bottom:=hx.Top+Canvas.TextHeight(t);
xx.Color:=clInfoBk;
xx.Font.Color:=clBlack;
xx.ActivateHint(hx,t);
end;
Когда я вызываю её так:
showhint("aa bb cc");
то всё ок.
Но, когда я делаю так:
showhint("1.1.1 1:1:1");
то показывается только 1.1.1 8((
причём место под 1:1:1 есть, но оно пустое....


 
Cobalt   (2002-05-12 09:49) [1]

А у меня все ок, все показывает, все буквы и цифры, корректно выделяет место под текст, вот только...
var xx:thintwindow; ??? Правильно?
и еще ругается на xx.Font.Color:=clBlack;
нет такого свойства у thintwindow
Может вы используете к-нить наследник, и в нем портачите?
Большое спасибо за пример создания Подсказки.
Да поможет Вам F1.


 
Song   (2002-05-12 10:09) [2]

2Cobalt © (12.05.02 09:49)
http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988623787&n=16


 
Deus   (2002-05-12 12:23) [3]

2Cobalt:
Да, xx:thintwindow; пропустил - оно раньше объявляется. Сорри.
xx.Font.Color - есть. Это ж работащая процедура...:))

я правильно понял, что когда Вы вызываете showhint("1.1.1 1:1:1");
то показывается именно 1.1.1 1:1:1 ?


 
Deus   (2002-05-12 12:53) [4]

Нашёл багу. Канву не ту имел :))
Правильная проце-дура:

procedure altshowtext_2(t:string);
var
xx:THintWIndow;
x:trect;
hx:trect;
h:hwnd;
begin
h:=findwindow("Shell_TrayWnd",NIL);
if h=0 then exit;
GetWindowRect(h,x);
if xx<>nil then begin
xx.free;
end;
xx:=thintwindow.create(form1);
hx:=xx.CalcHintRect(300,t,nil);
hx.Top:=x.top-xx.Canvas.TextHeight(t)-4;
hx.left:=x.right-xx.Canvas.TextWidth(t)-10;
hx.Right:=x.right;
hx.Bottom:=hx.Top+xx.Canvas.TextHeight(t);
xx.Color:=clInfoBk;
xx.Font.Color:=clBlack;
xx.ActivateHint(hx,t);
end;



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

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

Наверх




Память: 0.45 MB
Время: 0.006 c
1-73222
ДЖИН
2002-05-14 23:38
2002.05.23
Класс TStrings


1-73232
Holms
2002-05-15 09:56
2002.05.23
Простой вопрос


1-73259
alev
2002-05-10 20:16
2002.05.23
Как узнать, существует-ли файл?


3-73078
Sirus
2002-04-25 06:41
2002.05.23
Проблема скорости в базе данных


6-73336
tupica
2002-03-12 20:50
2002.05.23
Как отправить майл?





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