Winapi -> PRoblem z Editem

Odpowiedz Nowy wątek
2004-06-20 22:43

Rejestracja: 15 lat temu

Ostatnio: 13 lat temu

0

mam taki program w WinApi:

program DC;

uses
  Windows,
  Messages;

const
  AppName : PChar = 'DesktopMengerControlWnd';

var
  eXPos : HWND;

function EventsControl(h: HWND; uMsg: UINT; wPar: WPARAM; lPar: LPARAM): LRESULT; stdcall;
begin
  Result := 0;
  case uMsg of
    $0001 :
           begin
             CreateWindow('STATIC', 'Sekcje Pulpitu', WS_CHILD or WS_VISIBLE, 10, 10, 95, 20, h, 0, hInstance, nil);
             CreateWindow('STATIC', 'Pozycja Sekcji:', WS_CHILD or WS_VISIBLE, 12, 40, 105, 20, h, 0, hInstance, nil);
             CreateWindow('STATIC', 'X :', WS_CHILD or WS_VISIBLE, 12, 70, 25, 20, h, 0, hInstance, nil);
             eXPos := CreateWindow('EDIT', '', WS_CHILD or WS_VISIBLE or WS_BORDER, 37, 70, 50, 20, h, 0, hInstance, nil);
           end;
    $0002 : PostQuitMessage(0); // przy probie zamkniecia formy zamknij program
    else Result := DefWindowProc(h, uMsg, wPar, lPar);
  end;
end;

var
  WND : TWNDClass;
  MSG : TMsg;
begin
  WND.hIcon := LoadIcon(0, IDI_APPLICATION);
  WND.hCursor := LoadCursor(0, IDC_ARROW);
  WND.lpfnWndProc := @EventsControl;
  WND.hInstance   := hInstance;
  WND.lpszClassName := AppName;
  WND.hbrBackground := COLOR_WINDOW;
  RegisterClass(WND);
  CreateWindow(AppName, 'Desktop Controler 0.1', WS_VISIBLE or WS_TILEDWINDOW, 50, 50, 400, 400, 0, 0, hInstance, nil);
  while GetMessage(msg, 0, 0, 0) do DispatchMessage(msg);
end.

i jak go odpalam to nie mogę nic pisać w edicie ;-| dlaczego? jak to zmienić


programowanie to sztuka bardzo życiowa... Wciąż trzeba kombinować..

Pozostało 580 znaków

Anonim
2004-06-21 00:36
Anonim
0
while GetMessage(msg, 0, 0, 0) do DispatchMessage(msg);

Zamień na:

while GetMessage(msg, 0, 0, 0) do begin
  TranslateMessage(msg);
  DispatchMessage(msg);
end;

Pozostało 580 znaków

2004-06-21 11:04

Rejestracja: 15 lat temu

Ostatnio: 13 lat temu

0

dzienx pomoglo...


programowanie to sztuka bardzo życiowa... Wciąż trzeba kombinować..

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0