Оберон-клуб «ВЄДАsoft»
https://zx.oberon.org/forum/

Как добавить на форму кнопку при помощи WinApi?
https://zx.oberon.org/forum/viewtopic.php?f=79&t=322
Страница 1 из 1

Автор:  Len [ 13 июл 2017, 19:02 ]
Заголовок сообщения:  Как добавить на форму кнопку при помощи WinApi?

Я пытаюсь добавить на форму кнопку но она почему-то не видна:
Код: "OBERON"
  1. mainWnd := WinApi.CreateWindowEx( WinApi.WS_EX_TOPMOST + WinApi.WS_EX_CONTROLPARENT, "MoveWin", "MoveWin", WinApi.WS_OVERLAPPEDWINDOW, 100, 100, 100, 500, 0, 0, instance, 0 );
  2. mainWnd2:= WinApi.CreateWindowEx(WinApi.WS_EX_TOPMOST , "BUTTON", "MyBUTTON", WinApi.WS_CHILD, 0, 150, 50, 50, 0, 0,0, mainWnd );
  3. res := WinApi.ShowWindow(mainWnd, WinApi.SW_SHOWDEFAULT);
  4. res := WinApi.UpdateWindow(mainWnd);

Что я делаю не так? И ещё: почему на компилятор в ВВ ругается на метод WinApi.CreateWindow?

Автор:  Len [ 15 июл 2017, 05:30 ]
Заголовок сообщения:  Re: Как добавить на форму кнопку при помощи WinApi?

Всем спасибо за помощь :D Заработало:
Код: "OBERON"
  1. mainWnd := WinApi.CreateWindowEx(WinApi.WS_EX_TOPMOST, "MoveWin", "MoveWin", WinApi.WS_OVERLAPPEDWINDOW, 100, 100, 100, 500, 0, 0, instance, 0);
  2. mainWnd2 := WinApi.CreateWindowEx(WinApi.WS_EX_TOPMOST, "BUTTON", "MyButton", WinApi.WS_CHILD + WinApi.WS_VISIBLE + WinApi.WS_GROUP + WinApi.WS_TABSTOP + WinApi.BS_PUSHBUTTON, 0, 150, 50, 50, mainWnd, 1, instance, o);
  3. res := WinApi.ShowWindow(mainWnd, WinApi.SW_SHOWDEFAULT);
  4. res := WinApi.UpdateWindow(mainWnd);

Автор:  S.Atan [ 15 июл 2017, 09:26 ]
Заголовок сообщения:  Re: Как добавить на форму кнопку при помощи WinApi?

Не обижайся... :D
Просто если сам не разберёшся с АПИ, очень сложно будет...
Особенно если есть кому что подсказать.

Сам так надеялся, что кто-то, что-то... В итоге когда разобрался и попробывал, все пошло как по маслу...

Не забывай только память освобождать. WinApi к сборщику мусора мало имеет отношение.

Вот тут как раз на WinApi обёртка для активного оберона и компилятор (в 1 посте)
viewtopic.php?f=15&t=268#p1588

Страница 1 из 1 Часовой пояс: UTC + 2 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/