 |
|

17.03.2024, 18:29
|
|
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами:
4598023
Репутация:
183
|
|
@kin4stat, не работает имгуи(
по идее ж окно не должно показываться, а у меня показывается...
upd. также проблема с ImGui_ImplWin32_WndProcHandler - оно не работает вообще. будто не видит событий WM
C++:
Код:
LRESULT
WndProc_Hook
(
const
HWND hWnd
,
UINT uMsg
,
WPARAM wParam
,
LPARAM lParam
)
{
ImGui_ImplWin32_WndProcHandler
(
hWnd
,
uMsg
,
wParam
,
lParam
)
;
if
(
uMsg
==
WM_KEYDOWN
||
uMsg
==
WM_SYSKEYDOWN
)
if
(
wParam
==
0x42
)
// клавиша "B"
{
listOfLawsWindow
=
!
listOfLawsWindow
;
MessageBoxA
(
GetForegroundWindow
(
)
,
listOfLawsWindow
?
"listOfLawsWindow = true"
:
"listOfLawsWindow = false"
,
"listOfLawsWindow"
,
NULL
)
;
}
return
reinterpret_cast
(
oWndProc_Hook_2
)
(
hWnd
,
uMsg
,
wParam
,
lParam
)
;
}
хотя функция успешно работает... при нажатии на B работает всё
|
|
|

22.03.2024, 07:29
|
|
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами:
3831395
Репутация:
183
|
|
Сообщение от Vintik
@kin4stat, не работает имгуи(
по идее ж окно не должно показываться, а у меня показывается...
Почему оно должно не показываться? Параметр bool* p_open в ImGui::Begin никак не влияет на рисование окна, он используется просто для того чтобы рендерить кнопку закрытия окна
Потом передается в RenderWindowTitleBarContents
1711077781240.pngARMOR · 22 Мар 2024 в 06:29' data-fancybox="lb-post-1472497" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/235187/" style="cursor: pointer;" title="1711077781240.png">
А в ней уже при нажатии на кнопку просто изменяет её значение на false
Поэтому нужно делать так:
Сообщение от Vintik
upd. также проблема с ImGui_ImplWin32_WndProcHandler - оно не работает вообще. будто не видит событий WM
C++:
Код:
LRESULT
WndProc_Hook
(
const
HWND hWnd
,
UINT uMsg
,
WPARAM wParam
,
LPARAM lParam
)
{
ImGui_ImplWin32_WndProcHandler
(
hWnd
,
uMsg
,
wParam
,
lParam
)
;
if
(
uMsg
==
WM_KEYDOWN
||
uMsg
==
WM_SYSKEYDOWN
)
if
(
wParam
==
0x42
)
// клавиша "B"
{
listOfLawsWindow
=
!
listOfLawsWindow
;
MessageBoxA
(
GetForegroundWindow
(
)
,
listOfLawsWindow
?
"listOfLawsWindow = true"
:
"listOfLawsWindow = false"
,
"listOfLawsWindow"
,
NULL
)
;
}
return
reinterpret_cast
(
oWndProc_Hook_2
)
(
hWnd
,
uMsg
,
wParam
,
lParam
)
;
}
хотя функция успешно работает... при нажатии на B работает всё
А это странно, у меня всё работает отлично, окно нормально обрабатывает клики по нему и т.д
1711078135739.pngARMOR · 22 Мар 2024 в 06:29' data-fancybox="lb-post-1472497" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/235190/" style="cursor: pointer;" title="1711078135739.png">

|
|
|

22.03.2024, 07:34
|
|
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами:
3831395
Репутация:
183
|
|
Сообщение от skrrt
sampapi.lib выдает подобную хрень
Потому что библиотека собрана под другую Библиотеку исполнения. Тут уже или менять в своем проекте параметр Runtime Library, или в CMakeLists.txt в sampapi устанавливать её и пересобрать библиотеку.
|
|
|

22.03.2024, 19:14
|
|
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами:
4598023
Репутация:
183
|
|
Сообщение от ARMOR
Почему оно должно не показываться? Параметр bool* p_open в ImGui::Begin никак не влияет на рисование окна, он используется просто для того чтобы рендерить кнопку закрытия окна
Потом передается в RenderWindowTitleBarContents
А в ней уже при нажатии на кнопку просто изменяет её значение на false
Поэтому нужно делать так:
А это странно, у меня всё работает отлично, окно нормально обрабатывает клики по нему и т.д
Подскажи, пожалуйста, а как ты вообще включаешь курсор мыши?
|
|
|

22.03.2024, 19:18
|
|
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами:
4091290
Репутация:
213
|
|
|
|
|

25.03.2024, 20:03
|
|
Постоянный
Регистрация: 15.09.2021
Сообщений: 396
С нами:
2453766
Репутация:
68
|
|
как в sampapi создается команда? дайте самый простой пример плз
|
|
|

25.03.2024, 20:07
|
|
Флудер
Регистрация: 10.08.2021
Сообщений: 6,010
С нами:
2505538
Репутация:
133
|
|
Сообщение от skrrt
как в sampapi создается команда? дайте самый простой пример плз
Другое - С/С++ Вопрос - Ответ
enum test { one = 1, two = 2 }; Подскажите пожалуйста, как вывести "one" или "two" std::cout
www.blast.hk
|
|
|

25.03.2024, 20:08
|
|
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами:
4598023
Репутация:
183
|
|
Сообщение от skrrt
как в sampapi создается команда? дайте самый простой пример плз
C++:
Код:
if
(
SampVersion
==
1
)
sampapi
::
v037r1
::
RefInputBox
(
)
->
AddCommand
(
"test"
,
ActivateCommand
)
;
|
|
|

25.03.2024, 20:13
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от Vintik
C++:
Код:
if
(
SampVersion
==
1
)
sampapi
::
v037r1
::
RefInputBox
(
)
->
AddCommand
(
"test"
,
ActivateCommand
)
;
так же не стоит забывать, что необходимо при выгрузке плагина также удалять команду, иначе в последующем вводе команды, будет краш
|
|
|

25.03.2024, 22:25
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от skrrt
если выводит пустую строку, значит проблема с либой ?
Нет, просто я дурак и дал не верный ответ. Вот этот коддолжен работать
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|