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

Вниз

Установка шрифта   Найти похожие ветки 

 
bckfvjd   (2005-06-08 17:23) [0]

Как установить шрифт на надпись на кнопке созданной при помощи createwindow???


 
r00se ©   (2005-06-08 17:24) [1]

я тебе сейчас полностью исходник дам
program testwindow;

uses
 Windows,
 Messages;

var
 WinClass: TWndClassA;
 Inst, Handle, Button1, Label1, Edit1: Integer;
 Msg: TMsg;
 hFont: Integer;

{ Checks if typed password is "Amigreen" and shows Message }
procedure CheckPassword;
var
 Textlength: Integer;
 Text: PChar;
begin
 TextLength := GetWindowTextLength(Edit1);
 if TextLength = 8 then
 begin
   GetMem(Text, TextLength + 1);
   GetWindowText(Edit1, Text, TextLength + 1);
   if Text = "Amigreen" then
   begin
     MessageBoxA(Handle, "Password is correct.", "Password check", MB_OK);
     FreeMem(Text, TextLength + 1);
     Exit;
   end;
 end;
 MessageBoxA(Handle, "Password is incorrect.", "Password check", MB_OK);
end;

{ Custom WindowProc function }
function WindowProc(hWnd, uMsg, wParam, lParam: Integer): Integer; stdcall;
begin
 Result := DefWindowProc(hWnd, uMsg, wParam, lParam);
 { Checks for messages }
 if (lParam = Button1) and (uMsg = WM_COMMAND) then
   CheckPassword;
 if uMsg = WM_DESTROY then
   Halt;
end;

begin
 { ** Register Custom WndClass ** }
 Inst := hInstance;
 with WinClass do
 begin
   style              := CS_CLASSDC or CS_PARENTDC;
   lpfnWndProc        := @WindowProc;
   hInstance          := Inst;
   hbrBackground      := color_btnface + 1;
   lpszClassname      := "AG_TESTWINDOW";
   hCursor            := LoadCursor(0, IDC_ARROW);
 end; { with }
 RegisterClass(WinClass);

 { ** Create Main Window ** }
 Handle := CreateWindowEx(WS_EX_WINDOWEDGE, "AG_TESTWINDOW", "Amigreen TestWindow 1.00",
                          WS_VISIBLE or WS_SIZEBOX or WS_CAPTION or WS_SYSMENU,
                          363, 278, 305, 65, 0, 0, Inst, nil);
 { ** Create a button ** }
 Button1 := CreateWindow("Button", "OK", WS_VISIBLE or WS_CHILD or BS_PUSHLIKE or BS_TEXT,
                          216, 8, 75, 25, handle, 0, Inst, nil);
 { ** Create a label (static) ** }
 Label1 := Createwindow("Static", "", WS_VISIBLE or WS_CHILD or SS_LEFT,
              8, 12, 76, 13, Handle, 0, Inst, nil);

 { ** Create an edit field ** }
 Edit1 := CreateWindowEx(WS_EX_CLIENTEDGE, "Edit", "", WS_CHILD or WS_VISIBLE or
                         WS_BORDER or ES_PASSWORD, 88, 8, 121, 21, Handle, 0, Inst, nil);

 { ** Create Font Handle ** }
 hFont := CreateFont(-11, 0, 0, 0, 400, 0, 0, 0, DEFAULT_CHARSET,
                     OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
                     DEFAULT_PITCH or FF_DONTCARE, "MS Sans Serif");

 { Change fonts }
 if hFont <> 0 then
 begin
   SendMessage(Button1, WM_SETFONT, hFont, 0);
   SendMessage(Label1, WM_SETFONT, hFont, 0);
   SendMessage(Edit1, WM_SETFONT, hFont, 0);
 end;
 { Change label (static) text }
 SetWindowText(Label1, "Enter password:");
 { Set the focus to the edit control }
 SetFocus(Edit1);

 UpdateWindow(Handle);

 { ** Message Loop ** }
 while(GetMessage(Msg, Handle, 0, 0)) do
 begin
   TranslateMessage(msg);
   DispatchMessage(msg);
 end; { with }
end.


 
bckfvjd   (2005-06-08 17:31) [2]

вот спасибо. то что надо


 
avs ©   (2005-07-31 21:16) [3]

Как получить текущий HFont, имея HDC?


 
begin...end ©   (2005-07-31 21:59) [4]

> avs ©   (31.07.05 21:16) [3]

Посмотрите в справке по API описание функции GetCurrentObject.



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

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

Наверх




Память: 0.46 MB
Время: 0.034 c
14-1125359134
Гриха
2005-08-30 03:45
2005.09.25
В 10 лет?!


6-1117379207
Галинка
2005-05-29 19:06
2005.09.25
Можно ли писать интернет-примочки на Дельфи?


9-1117096938
Slavikk
2005-05-26 12:42
2005.09.25
GLScene -меню


1-1125725047
r9000
2005-09-03 09:24
2005.09.25
Определение границы столбца в stringgride


3-1123763303
Alex_
2005-08-11 16:28
2005.09.25
Проблема с кодировкой





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