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

  #3631  
Старый 08.06.2019, 17:36
2Shae
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами: 6314183

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

Как отобразить курсор при активном меню ImGui и спрятать его, когда оно закрыто?
 
Ответить с цитированием

  #3632  
Старый 08.06.2019, 18:39
_=Gigant=_
Участник форума
Регистрация: 19.01.2017
Сообщений: 130
С нами: 4901705

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

Цитата:
Сообщение от 2Shae  

Как отобразить курсор при активном меню ImGui и спрятать его, когда оно закрыто?
C++:





Код:
static
int
mouse_imgui_menu
=
2
;
if
(
bShow_ImGui_Menu
)
{
mouse_imgui_menu
=
0
;
toggleSAMPCursor
(
1
)
;
}
else
{
if
(
mouse_imgui_menu
==
0
)
{
toggleSAMPCursor
(
0
)
;
mouse_imgui_menu
++
;
}
}
 
Ответить с цитированием

  #3633  
Старый 09.06.2019, 00:25
Vandal™
Познающий
Регистрация: 06.01.2016
Сообщений: 55
С нами: 5447426

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

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

Потому что ImGui работает только с UTF-8.
ImGui::Text(u8"Русский язык");
ImGui::Text(u8"Чек-Текст");

ImGui::Button(u8"Закрыть", ImVec2(75, 20)); - не пашет, все равно вопросы вместо текста.

UPD:

C++:





Код:
ImFontConfig font_config
;
font_config
.
OversampleH
=
1
;
font_config
.
OversampleV
=
1
;
font_config
.
PixelSnapH
=
1
;
static
const
ImWchar ranges
[
]
=
{
0x0020
,
0x00FF
,
// Basic Latin + Latin Supplement
0x0400
,
0x044F
,
// Cyrillic
0
,
}
;
io
.
Fonts
->
AddFontFromFileTTF
(
"C:\\Windows\\Fonts\\Tahoma.ttf"
,
16.0f
,
&
font_config
,
ranges
)
;


Есть еще решения проблемы, кроме предложенных?
 
Ответить с цитированием

  #3634  
Старый 09.06.2019, 01:59
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

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

Цитата:
Сообщение от Vandal™  

ImGui::Text(u8"Чек-Текст");
ImGui::Button(u8"Закрыть", ImVec2(75, 20)); - не пашет, все равно вопросы вместо текста.

UPD:

C++:





Код:
ImFontConfig font_config
;
font_config
.
OversampleH
=
1
;
font_config
.
OversampleV
=
1
;
font_config
.
PixelSnapH
=
1
;
static
const
ImWchar ranges
[
]
=
{
0x0020
,
0x00FF
,
// Basic Latin + Latin Supplement
0x0400
,
0x044F
,
// Cyrillic
0
,
}
;
io
.
Fonts
->
AddFontFromFileTTF
(
"C:\\Windows\\Fonts\\Tahoma.ttf"
,
16.0f
,
&
font_config
,
ranges
)
;


Есть еще решения проблемы, кроме предложенных?
Должно работать, может, у тебя в коде есть еще загрузки шрифтов, убедись, что этот шрифт загружается последним или что установлен именно этот шрифт.

И попробуй сделать так

C++:





Код:
io
.
FontDefault
=
io
.
Fonts
->
AddFontFromFileTTF
(
fontPath
,
16
,
&
font_config
,
io
.
Fonts
->
GetGlyphRangesCyrillic
(
)
)
;
 
Ответить с цитированием

  #3635  
Старый 09.06.2019, 03:19
Vandal™
Познающий
Регистрация: 06.01.2016
Сообщений: 55
С нами: 5447426

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

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

Чем этот не подходит?
1 - u8"Text" отказывается работать (ImGUI v1.71)

2 - занимает несколько строк при инициализации, но работает. Стало интересно какие еще решения есть
 
Ответить с цитированием

  #3636  
Старый 09.06.2019, 06:16
astap_
Постоянный
Регистрация: 05.03.2014
Сообщений: 626
С нами: 6415078

Репутация: 163


По умолчанию

Цитата:
Сообщение от Vandal™  

1 - u8"Text" отказывается работать (ImGUI v1.71)
2 - занимает несколько строк при инициализации, но работает. Стало интересно какие еще решения есть
дефолтный шрифт имгуи не поддерживает кириллицу, какие тут ещё могут быть решения?
 
Ответить с цитированием

  #3637  
Старый 09.06.2019, 16:43
Неадекватная сова
Постоянный
Регистрация: 02.06.2018
Сообщений: 342
С нами: 4183567

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

Цитата:
Сообщение от Vandal™  

ImGui::Text(u8"Чек-Текст");
ImGui::Button(u8"Закрыть", ImVec2(75, 20)); - не пашет, все равно вопросы вместо текста.

UPD:

C++:





Код:
ImFontConfig font_config
;
font_config
.
OversampleH
=
1
;
font_config
.
OversampleV
=
1
;
font_config
.
PixelSnapH
=
1
;
static
const
ImWchar ranges
[
]
=
{
0x0020
,
0x00FF
,
// Basic Latin + Latin Supplement
0x0400
,
0x044F
,
// Cyrillic
0
,
}
;
io
.
Fonts
->
AddFontFromFileTTF
(
"C:\\Windows\\Fonts\\Tahoma.ttf"
,
16.0f
,
&
font_config
,
ranges
)
;


Есть еще решения проблемы, кроме предложенных?
После всех include"ов вставь и глянь:

C++:





Код:
#pragma execution_character_set("utf-8")
 
Ответить с цитированием

  #3638  
Старый 10.06.2019, 02:25
ishi
Постоянный
Регистрация: 17.01.2014
Сообщений: 493
С нами: 6483143

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

В c++ проекте на linux мне попалась вот такая интересная строка:







C++:





Код:
std
::
string mainXML
=
#include
"Main.xml"
;


Однако, в винде среда считает её ошибкой. Подскажите, есть вариант в винде так же через дефайн загружать содержимое файла в string, без открытия и чтения?
 
Ответить с цитированием

  #3639  
Старый 10.06.2019, 06:59
Cake_
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами: 4793630

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

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

В c++ проекте на linux мне попалась вот такая интересная строка:







C++:





Код:
std
::
string mainXML
=
#include
"Main.xml"
;


Однако, в винде среда считает её ошибкой. Подскажите, есть вариант в винде так же через дефайн загружать содержимое файла в string, без открытия и чтения?
Чем тебе с чтением не нравится?
 
Ответить с цитированием

  #3640  
Старый 10.06.2019, 12:27
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

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

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

В c++ проекте на linux мне попалась вот такая интересная строка:







C++:





Код:
std
::
string mainXML
=
#include
"Main.xml"
;


Однако, в винде среда считает её ошибкой. Подскажите, есть вариант в винде так же через дефайн загружать содержимое файла в string, без открытия и чтения?
file.cpp

C++:





Код:
R"(int function(int a , int b){
return a + b;
})"


main.cpp

C++:





Код:
int
main
(
)
{
const
char
*
file
=
{
#include "file.h"
}
;
printf
(
"%s\n"
,
file
)
;
system
(
"pause"
)
;
return
0
;
}
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.