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

Вниз

URL   Найти похожие ветки 

 
Evgeny   (2001-12-30 07:27) [11]

Попытаюсь объяснить. Вот сам объект:

type
TOnEvent = procedure(Sender : TObject) of Object;
TUrlLabel = class
private
fParent : HWND;
fAlign : TTextAlign;
fRect : TRect;
fUrl : String;
fSelect : Boolean;
fPressed : Boolean;
fDefColor : ColorRef;
fSelColor : ColorRef;
fDefFont : HFONT;
fSelFont : HFONT;
fFontSize : Integer;
fHint : String;
fOnOverURL : TOnEvent;
fOnURLClick : TOnEvent;
procedure SetOnURL(const Index: Integer; const Value: TOnEvent);
procedure SetUrlText(Value : String);
procedure SetLinkColor(const Index: Integer; Value : ColorRef);
procedure SetFontSize(Value : Integer);
procedure SetAlign(Value : TTextAlign);
procedure SetHint(Value : String);
public
Handle : HWND;
tti : TToolInfo;
constructor Create(x, y, w, h : Integer; hParent : HWND);
destructor Destroy; override;
procedure Redraw;
published
property Align: TTextAlign read fAlign write SetAlign;
property aRect: TRect read fRect;
property FontSize: Integer read fFontSize write SetFontSize;
property Hint: String read fHint write SetHint;
property DefColor: ColorRef index 0 read fDefColor write SetLinkColor;
property SelColor: ColorRef index 1 read fSelColor write SetLinkColor;
property Selected: Boolean read fSelect;
property URL: String read fUrl write SetUrlText;
property OnOverURL: TOnEvent index 0 read fOnOverURL write SetOnURL;
property OnURLClick: TOnEvent index 8 read fOnURLClick write SetOnURL;
end;

{----------------------------------------------------------}

procedure TUrlLabel.SetOnURL(const Index: Integer; const Value: TOnEvent);
begin
if Index = 0 then
fOnOverURL := Value
else
fOnURLClick := Value;
end;


Вызов:

WM_INITDIALOG :
begin
for I := 0 to 29 do
begin
Url[I] := TUrlLabel.Create(I * 14 + 14, 6, 14, 16, hWndDlg);
with Url[I] do
begin
Url := Alpha[I];
Hint := Alpha[I];
// OnUrlClick := UrlClick;
end;
end;

{----------------------------------------------------------}
// Тест
procedure UrlClick;
begin
MessageBox(Wnd, "Url Click", "Внимание", MB_OK);
end;


Ну а так как этот объект единственный, а само WinAPI по определению процедурное, то не могу сообразить как мне теперь организовать вызов
OnUrlClick := UrlClick;
Вот собственно и весь вопрос. Сожалею, что не совсем понятно описал в первый раз.



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

Форум: "WinAPI";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.005 c
3-9060
amamed_3071
2002-02-06 16:22
2002.03.04
Create Quickreport


1-9170
ProstoChaynik
2002-02-14 09:25
2002.03.04
цвет TButton


1-9102
С_тоша
2002-02-13 16:20
2002.03.04
Нужна Помощь HELP!!!!


1-9147
Poirot
2002-02-17 05:42
2002.03.04
Как сделать форму прозроачной - Alpha например на 70%


4-9323
Alexey(Me)
2002-01-03 14:11
2002.03.04
E-Mail





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