HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 06.04.2024, 17:13
delanov
Познающий
Регистрация: 11.05.2023
Сообщений: 53
С нами: 1585608

Репутация: 23
По умолчанию

Именно когда я хочу вывести вектор микрофонов в имгуи комбо я встречаю типо такого - ???? Realtek(R) Audio
 
Ответить с цитированием

  #2  
Старый 06.04.2024, 17:28
chromiusj
Флудер
Регистрация: 10.08.2021
Сообщений: 6,010
С нами: 2505538

Репутация: 133


По умолчанию

[IMGUI] Русские символы

Здравствуйте форумчане. У меня есть вопрос, как можно сделать поддержку русских символов в Imgui меню. Разрабатываю я его на c++ для игры варфейс. Спасибо за ранее

www.blast.hk
 
Ответить с цитированием

  #3  
Старый 06.04.2024, 17:45
delanov
Познающий
Регистрация: 11.05.2023
Сообщений: 53
С нами: 1585608

Репутация: 23
По умолчанию

Цитата:
Сообщение от ChromiusJ  

[IMGUI] Русские символы

Здравствуйте форумчане. У меня есть вопрос, как можно сделать поддержку русских символов в Imgui меню. Разрабатываю я его на c++ для игры варфейс. Спасибо за ранее

www.blast.hk

Дядя я сказал в С++. Вектор для тебя это прикол?

Цитата:
Сообщение от penta  

Дядя я сказал в С++. Вектор для тебя это прикол?
+ вариант выше с вектором не проходит, только если объявлять в самом файле переменную
 
Ответить с цитированием

  #4  
Старый 09.04.2024, 22:35
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Арик, тебе дали для плюсов. Какие вопросы? Если что функция возращает указатель на созданный шрифт.
 
Ответить с цитированием

  #5  
Старый 09.04.2024, 23:13
delanov
Познающий
Регистрация: 11.05.2023
Сообщений: 53
С нами: 1585608

Репутация: 23
По умолчанию

Цитата:
Сообщение от Dark_Knight  

Арик, тебе дали для плюсов. Какие вопросы? Если что функция возращает указатель на созданный шрифт.
Отредактировано было. А еще шрифт не помогает.
 
Ответить с цитированием

  #6  
Старый 09.04.2024, 23:18
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от penta  

Отредактировано было. А еще шрифт не помогает.
Не факт, что шрифт имеет такой набор символов или же указан неправильный диапазон
 
Ответить с цитированием

  #7  
Старый 09.04.2024, 23:38
delanov
Познающий
Регистрация: 11.05.2023
Сообщений: 53
С нами: 1585608

Репутация: 23
По умолчанию

C++:





Код:
HRESULT
getMicrofones
(
)
{
HRESULT hr
;
IMMDeviceEnumerator
*
pEnumerator
=
NULL
;
IMMDeviceCollection
*
pDevices
=
NULL
;
IMMDevice
*
pDevice
=
NULL
;
LPWSTR pwszID
=
NULL
;
IPropertyStore
*
pProps
=
NULL
;
PROPVARIANT varName
;
hr
=
CoInitialize
(
NULL
)
;
if
(
FAILED
(
hr
)
)
{
return
hr
;
}
hr
=
CoCreateInstance
(
__uuidof
(
MMDeviceEnumerator
)
,
NULL
,
CLSCTX_ALL
,
__uuidof
(
IMMDeviceEnumerator
)
,
(
void
*
*
)
&
pEnumerator
)
;
if
(
FAILED
(
hr
)
)
{
CoUninitialize
(
)
;
return
hr
;
}
hr
=
pEnumerator
->
EnumAudioEndpoints
(
eCapture
,
DEVICE_STATE_ACTIVE
,
&
pDevices
)
;
if
(
FAILED
(
hr
)
)
{
pEnumerator
->
Release
(
)
;
CoUninitialize
(
)
;
return
hr
;
}
UINT count
;
hr
=
pDevices
->
GetCount
(
&
count
)
;
if
(
FAILED
(
hr
)
)
{
pDevices
->
Release
(
)
;
pEnumerator
->
Release
(
)
;
CoUninitialize
(
)
;
return
hr
;
}
for
(
UINT i
=
0
;
i

Item
(
i
,
&
pDevice
)
;
if
(
FAILED
(
hr
)
)
{
continue
;
}
hr
=
pDevice
->
GetId
(
&
pwszID
)
;
if
(
FAILED
(
hr
)
)
{
pDevice
->
Release
(
)
;
continue
;
}
hr
=
pDevice
->
OpenPropertyStore
(
STGM_READ
,
&
pProps
)
;
if
(
FAILED
(
hr
)
)
{
CoTaskMemFree
(
pwszID
)
;
pDevice
->
Release
(
)
;
continue
;
}
PropVariantInit
(
&
varName
)
;
hr
=
pProps
->
GetValue
(
PKEY_Device_FriendlyName
,
&
varName
)
;
if
(
FAILED
(
hr
)
)
{
pProps
->
Release
(
)
;
CoTaskMemFree
(
pwszID
)
;
pDevice
->
Release
(
)
;
continue
;
}
size_t size
=
wcslen
(
varName
.
pwszVal
)
+
1
;
char
*
buffer
=
new
char
[
size
]
;
wcstombs
(
buffer
,
varName
.
pwszVal
,
size
)
;
microphones
.
push_back
(
buffer
)
;
PropVariantClear
(
&
varName
)
;
pProps
->
Release
(
)
;
CoTaskMemFree
(
pwszID
)
;
pDevice
->
Release
(
)
;
}
pDevices
->
Release
(
)
;
pEnumerator
->
Release
(
)
;
CoUninitialize
(
)
;
return
S_OK
;
}
std
::
optional

D3D9Present
(
const
decltype
(
PresentHook
)
&
hook
,
IDirect3DDevice9
*
pDevice
,
CONST RECT
*
pSrcRect
,
CONST RECT
*
pDestRect
,
HWND hDestWindow
,
CONST RGNDATA
*
pDirtyRegion
)
{
static
bool
ImGuiInit
{
}
;
if
(
!
ImGuiInit
)
{
ImGui
::
CreateContext
(
)
;
ImGui_ImplWin32_Init
(
*
*
reinterpret_cast

(
0xC17054
)
)
;
ImGui_ImplDX9_Init
(
pDevice
)
;
ImGui
::
GetIO
(
)
.
IniFilename
=
nullptr
;
#pragma warning(push)
#pragma warning(disable: 4996)
std
::
string font
{
getenv
(
"WINDIR"
)
}
;
font
+=
"\\Fonts\\Arialbd.TTF"
;
#pragma warning(pop)
ImGui
::
GetIO
(
)
.
Fonts
->
AddFontFromFileTTF
(
"C:\\Windows\\Fonts\\Arial.ttf"
,
16.5f
,
NULL
,
ImGui
::
GetIO
(
)
.
Fonts
->
GetGlyphRangesCyrillic
(
)
)
;
fontVoice
=
ImGui
::
GetIO
(
)
.
Fonts
->
AddFontFromMemoryTTF
(
monserratbold
,
sizeof
(
monserratbold
)
,
22.0f
,
NULL
,
ImGui
::
GetIO
(
)
.
Fonts
->
GetGlyphRangesCyrillic
(
)
)
;
style
(
)
;
auto
latest_wndproc_ptr
=
GetWindowLongPtrW
(
*
*
reinterpret_cast

(
0xC17054
)
,
GWLP_WNDPROC
)
;
WndProcHook
.
set_dest
(
latest_wndproc_ptr
)
;
WndProcHook
.
set_cb
(
&
WndProc
)
;
WndProcHook
.
install
(
)
;
ImGuiInit
=
{
true
}
;
}
ImGui_ImplDX9_NewFrame
(
)
;
ImGui_ImplWin32_NewFrame
(
)
;
ImGui
::
NewFrame
(
)
;
ImGui
::
Combo
(
u8
"ShowMic"
,
&
selectedMic
,
microphones
.
data
(
)
,
microphones
.
size
(
)
)
;
}
void
main
(
)
{
static
bool
inited
=
false
;
setlocale
(
LC_ALL
,
"rus"
)
;
if
(
!
inited
&&
samp
::
RefChat
(
)
!=
nullptr
)
{
getMicrofones
(
)
;
inited
=
true
;
}
}


где моя ошибка?

Цитата:
Сообщение от Dark_Knight  

Не факт, что шрифт имеет такой набор символов или же указан неправильный диапазон
выше код написал
 
Ответить с цитированием

  #8  
Старый 09.04.2024, 23:57
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Банально я удивлен как оно у тебя вообще работает хотя не должно, а ну да. В дебаге рендеришь. Короче. переделывай рендер. Насколько я помню, дебаг окно имгуи только стандартный шрифт имгуи юзает. и комбо уже давно устарелая функция.
 
Ответить с цитированием

  #9  
Старый 09.04.2024, 23:58
delanov
Познающий
Регистрация: 11.05.2023
Сообщений: 53
С нами: 1585608

Репутация: 23
По умолчанию

Цитата:
Сообщение от Dark_Knight  

Банально Я удивлен как оно у тебя вообще работает хотя не должно, а ну да. В дебаге рендеришь. Короче. переделывай рендер. Насколько я помню, дебаг окно имгуи только стандартный шрифт имгуи юзает. и комбо уже давно устарелая функция.
не дебаг окно, оно внутри имгуи::бегин, и что посоветуешь вместо комбо?
 
Ответить с цитированием

  #10  
Старый 10.04.2024, 00:01
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от penta  

не дебаг окно, оно внутри имгуи::бегин, и что посоветуешь вместо комбо?
Документацию и тестовое приложение. У меня уже давно ВСки нет и хз че там. Точно помню, что комбо deprecated

И убери локаль.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.