C++ Вопрос Как сделать кей бинды на imgui

Ушастый
Забаненный
Статус
Оффлайн
Регистрация
23 Ноя 2021
Сообщения
371
Реакции[?]
56
Поинты[?]
10K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как сделать кей бинды на imgui и что бы функции не накладывались друг на друга пж
 
Нестандартное звание?
Пользователь
Статус
Оффлайн
Регистрация
23 Июл 2021
Сообщения
421
Реакции[?]
81
Поинты[?]
2K
Ушастый
Забаненный
Статус
Оффлайн
Регистрация
23 Ноя 2021
Сообщения
371
Реакции[?]
56
Поинты[?]
10K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Да но как?
 
coder of the year
Участник
Статус
Оффлайн
Регистрация
13 Мар 2019
Сообщения
886
Реакции[?]
266
Поинты[?]
4K
Как сделать кей бинды на imgui и что бы функции не накладывались друг на друга пж
use std::vector, u can do smth like this i think

C++:
for ( int i = 0; i < vector.size(); i++ )
{
    auto offset = 0;
    if ( i > 0 )
        offset = 24 * i; // ofc 24 is just a example value
    ImGui::SetCursorPos( ImVec2( 0,  offset ) )
    ImGui::Text( vector.at( i ) );
}
 
I Want to Die in New Orleans
Участник
Статус
Оффлайн
Регистрация
10 Окт 2020
Сообщения
516
Реакции[?]
496
Поинты[?]
85K
use std::vector, u can do smth like this i think

C++:
for ( int i = 0; i < vector.size(); i++ )
{
    auto offset = 0;
    if ( i > 0 )
        offset = 24 * i; // ofc 24 is just a example value
    ImGui::SetCursorPos( ImVec2( 0,  offset ) )
    ImGui::Text( vector.at( i ) );
}
проще будет сделать так
C++:
for (int i = 0, j = 0; i < vect.size(); i++, j += 25)
{
     SetCursorPos(ImVec2(0, j));
     Text(vect.at(i));
}
 
ставь чайник, зажигай плиту
Эксперт
Статус
Оффлайн
Регистрация
22 Май 2020
Сообщения
1,444
Реакции[?]
1,092
Поинты[?]
10K
проще будет сделать так
C++:
for (int i = 0, j = 0; i < vect.size(); i++, j += 25)
{
     SetCursorPos(ImVec2(0, j));
     Text(vect.at(i));
}
use std::vector, u can do smth like this i think

C++:
for ( int i = 0; i < vector.size(); i++ )
{
    auto offset = 0;
    if ( i > 0 )
        offset = 24 * i; // ofc 24 is just a example value
    ImGui::SetCursorPos( ImVec2( 0,  offset ) )
    ImGui::Text( vector.at( i ) );
}
Each ImGui::Text call ItemSize, so you don't need to move CursorPos. Just make a simple container if you want to have a single x-coordinate.
 
I Want to Die in New Orleans
Участник
Статус
Оффлайн
Регистрация
10 Окт 2020
Сообщения
516
Реакции[?]
496
Поинты[?]
85K
Each ImGui::Text call ItemSize, so you don't need to move CursorPos. Just make a simple container if you want to have a single x-coordinate.
понятное дело что лучше это сделать правильно, так, как задумывалось при создании виджета - спейсингом между итемами, я просто ответил про то, как было бы лучше реализовать цикл ASPIRIN-а
 
Сверху Снизу