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

Вниз

Окно с кнопкой на WinAPI   Найти похожие ветки 

 
DelphiSchueler ©   (2006-03-22 13:01) [0]

Проблема состоит в том, что я хочу создать форму с кнопкой на WIN API, ну вот только кнопку у меня можно за рамки формы вытягивать и Title Bar  у неё есть, какие Флаги для dwStyle надо в CretaeWindow вставить, что бы она на нормальную кнопку похожа была?
Зарание благодарен
З.Ы. Вот исходник если что:

program SmallPrg;

{$APPTYPE CONSOLE}

uses
 Windows,
 Messages,
 Dialogs;

const WinName="MainWClass";

function WinProc(Window: HWND;AMessage,WParam,LParam: longint): longint; stdcall; export;
begin
 case AMessage of
   WM_DESTROY: begin
                 PostQuitMessage(0);
                 Exit;
               end;
   wm_LButtonDown: ShowMessage("Sie haben linke MausTaste gedruckt");
 else
   Result:= DefWindowProc(Window,AMessage,WParam,LParam);
 end;
end;

function WClass: Boolean;
var wnd: TWndClass;
begin
 wnd.style:= CS_HREDRAW and CS_VREDRAW;
 wnd.lpfnWndProc:= @WinProc;;
 wnd.cbClsExtra:= 0;
 wnd.cbWndExtra:= 0;
 wnd.hInstance:= hInstance;
 wnd.hIcon:= LoadIcon(0, IDI_APPLICATION);
 wnd.hCursor:= LoadCursor(0, IDC_ARROW);
 wnd.hbrBackground:= COLOR_BACKGROUND;
 wnd.lpszMenuName:= nil;
 wnd.lpszClassName:= PChar(WinName);
 result:= RegisterClass(wnd)<>0;
end;

function Start: HWND;
begin
 Result:= CreateWindow(PChar(WinName),"SmallPrg",WS_OVERLAPPEDWINDOW and (not WS_SIZEBOX),200,400,200,200,0,0,hInstance,nil);
end;

var Win, Button: HWND;
   AMessage: msg;
begin
 writeln("Das Programm wurde erfolgreich ausgefuhrt...");
 WClass;
 Win := Start;
 ShowWindow(Win, SW_SHOWNORMAL);
 UpdateWindow(Win);
////////////////////////////////////////////////////////////////////////////////
 Button:= CreateWindow("BUTTON","Кнопка", WS_CHILD and BS_PUSHLIKE,250,450,10,90,Win,0,hInstance,nil);
 ShowWindow(Button, CmdShow);
 UpdateWindow(Button);
////////////////////////////////////////////////////////////////////////////////
 while (GetMessage(AMessage,0,0,0)) do
   begin
     TranslateMessage(AMessage);
     DispatchMessage(AMessage);
   end;
 Halt(AMessage.wParam);
end.


 
clickmaker ©   (2006-03-22 13:26) [1]

BS_PUSHBUTTON Or WS_CHILD
не надо стили объединять and"ом


 
grisme ©   (2006-03-22 15:12) [2]

AND-это логическое УМНОЖЕНИЕ, а не сложение...)))


 
DelphiSchueler ©   (2006-03-22 16:52) [3]

Пасибо большое!!!!!!!!!!



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

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

Наверх





Память: 0.45 MB
Время: 0.012 c
3-1145967793
Express
2006-04-25 16:23
2006.06.18
TDBGrid - номер текущей записи и всего записей в таблице


1-1147330802
bva
2006-05-11 11:00
2006.06.18
MSWord в Delphi


15-1148583587
Andy BitOff
2006-05-25 22:59
2006.06.18
Насколь серьёзная такая защита?


2-1148890052
verybadbug
2006-05-29 12:07
2006.06.18
TWebBrowser


2-1148914109
0_o
2006-05-29 18:48
2006.06.18
Обращение к родительской ветке древа





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