Maksim V
17-07-2007, 23:49
Здраствуйте. Привожу сразу все исходные данные.
program test;
{$R test.res}
uses
Windows,
Messages,
ShellAPI;
const
MAIN_DIALOG = 101;
ABOUT_DIALOG = 102;
MAIN_ABOUT = 104;
ABOUT_CLOSE = 105;
var
Inst,
HWND : integer;
procedure AboutDlgInit;
begin
end;
function AboutDlgProc(hWin, uMsg, wParam, lParam : Integer) : Integer; stdcall;
begin
Result := 0;
case uMsg of
WM_COMMAND : begin
if wParam = ABOUT_CLOSE then EndDialog(hWin,0);
if wParam = WM_COMMAND then EndDialog(hWin,0);
end;
WM_INITDIALOG : begin
AboutDlgInit;
end;
WM_DESTROY : begin
EndDialog(hWin,0);
end;
WM_CLOSE : begin
EndDialog(hWin,0);
end;
end;
end;
procedure MainDlgInit;
begin
end;
function MainDlgProc(hWin, uMsg, wParam, lParam : Integer) : Integer; stdcall;
begin
case uMsg of
WM_COMMAND : begin
if wParam = MAIN_ABOUT then DialogBoxParam(Inst, PChar(ABOUT_DIALOG), hWin, @AboutDlgProc, 0);
if wParam = WM_COMMAND then EndDialog(hWin,0);
end;
WM_DESTROY : begin
EndDialog(hWin,0);
end;
WM_CLOSE : begin
EndDialog(hWin,0);
end;
end;
end;
begin
Inst := hInstance; DialogBoxParam(Inst, PChar(MAIN_DIALOG), 0, @MainDlgProc, 0);
end.
Вопрос: Как можно в Эбаут диалоге создать статичесий текст с прозрачным фоном? Желательно при наведении на этот текст, цвет текста становился синим цветом и курсор менялся на ладонь с указывающим пальцем - хочу сделать гиперссылку. Знаю что надо использовать функцию CreateWindowsEx, но как правильно? Напишите сразу полный текст исходника, если вас не затруднит.
program test;
{$R test.res}
uses
Windows,
Messages,
ShellAPI;
const
MAIN_DIALOG = 101;
ABOUT_DIALOG = 102;
MAIN_ABOUT = 104;
ABOUT_CLOSE = 105;
var
Inst,
HWND : integer;
procedure AboutDlgInit;
begin
end;
function AboutDlgProc(hWin, uMsg, wParam, lParam : Integer) : Integer; stdcall;
begin
Result := 0;
case uMsg of
WM_COMMAND : begin
if wParam = ABOUT_CLOSE then EndDialog(hWin,0);
if wParam = WM_COMMAND then EndDialog(hWin,0);
end;
WM_INITDIALOG : begin
AboutDlgInit;
end;
WM_DESTROY : begin
EndDialog(hWin,0);
end;
WM_CLOSE : begin
EndDialog(hWin,0);
end;
end;
end;
procedure MainDlgInit;
begin
end;
function MainDlgProc(hWin, uMsg, wParam, lParam : Integer) : Integer; stdcall;
begin
case uMsg of
WM_COMMAND : begin
if wParam = MAIN_ABOUT then DialogBoxParam(Inst, PChar(ABOUT_DIALOG), hWin, @AboutDlgProc, 0);
if wParam = WM_COMMAND then EndDialog(hWin,0);
end;
WM_DESTROY : begin
EndDialog(hWin,0);
end;
WM_CLOSE : begin
EndDialog(hWin,0);
end;
end;
end;
begin
Inst := hInstance; DialogBoxParam(Inst, PChar(MAIN_DIALOG), 0, @MainDlgProc, 0);
end.
Вопрос: Как можно в Эбаут диалоге создать статичесий текст с прозрачным фоном? Желательно при наведении на этот текст, цвет текста становился синим цветом и курсор менялся на ладонь с указывающим пальцем - хочу сделать гиперссылку. Знаю что надо использовать функцию CreateWindowsEx, но как правильно? Напишите сразу полный текст исходника, если вас не затруднит.