Вопрос Как сделать отступ для табов в Imgui?

Начинающий
Статус
Оффлайн
Регистрация
19 Июн 2020
Сообщения
26
Реакции[?]
0
Поинты[?]
0
Добрый день , хотел бы узнать как сделать такой отступ для табов ?
1653983662031.png
 
Главный модератор
Главный Модератор
Статус
Оффлайн
Регистрация
13 Фев 2018
Сообщения
1,094
Реакции[?]
801
Поинты[?]
146K
Заранее скажу - я с imgui никогда дела не имел, поэтому, особо тапками не пиздим. Отвечаю чисто исходя из логики.

1) Создаешь бы прозрачное окно
2) Устанавливаешь бы ему свойства прозрачности:
SetLayeredWindowAttributes(hwnd, 0, 255, LWA_ALPHA);
3) Поверх него уже рисовал бы все остальные нужные тебе табы.
 
Эксперт
Статус
Оффлайн
Регистрация
30 Дек 2019
Сообщения
1,967
Реакции[?]
958
Поинты[?]
19K
Участник
Статус
Оффлайн
Регистрация
15 Янв 2021
Сообщения
492
Реакции[?]
289
Поинты[?]
79K
Ребят, ну вы на приколе... Может и я конечно тоже, но лучший способ будет это выставить padding ( т. е. отступ ) через стиль

Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Фев 2021
Сообщения
591
Реакции[?]
118
Поинты[?]
0
Не ебу что ты хотел, но на просторах гугла нашел это

Код:
WindowPadding - Изменение отступов с верху и с левого бока
WindowRounding - Изменение закруглённости рамок
ChildWindowRounding - Закругление чайлд меню
FramePadding - Изменение размеров элементов
FrameRounding - Изменение закруглённости Slider'ов,Checkbox'ов,Button'ов
ItemSpacing - Изменение расстояния между элементами
ItemInnerSpacing - Изменение расстояния между Slider'ами
TouchExtraPadding -  // пока не узнал //
IndentSpacing - Изменение отступа с левого края для слайдеров
ScrollbarSize - Изменение размера ScrollBar'а
ScrollbarRounding - Изменение закруглённости ScrollBar'а
GrabMinSize - Увеличение размера ползунков ScrollBar'а
GrabRounding - Изменение закруглённости ползунков Slider'ов
WindowTitleAlign - Изменение положения текста в Title Bar'e
ButtonTextAlign - Изменение положения текста на кнопке
 
bluedream.ltd
Статус
Оффлайн
Регистрация
4 Янв 2020
Сообщения
3,000
Реакции[?]
1,275
Поинты[?]
0
Есть два способа.
Создать имгуи окно и выставить ему прозрачный цвет. Далее просто зарендерить два прямоугольника, один для табов, другой для главного окна, ну либо вместо прямоугольника чайлд.
Второй способ.
Создать два отдельных окна, одному прописать флаг nomove, от окна с табами получить позицию через GetWindowPos, ко второму окну прописать SetWindowPos(позиция окна с табами + отступ по Х), но способ костыльный т.к перетаскивание меню будет работать только от окна с табами, но при желании это можно пофиксить.
 
Участник
Статус
Оффлайн
Регистрация
15 Янв 2021
Сообщения
492
Реакции[?]
289
Поинты[?]
79K
Есть два способа.
Создать имгуи окно и выставить ему прозрачный цвет. Далее просто зарендерить два прямоугольника, один для табов, другой для главного окна, ну либо вместо прямоугольника чайлд.
Второй способ.
Создать два отдельных окна, одному прописать флаг nomove, от окна с табами получить позицию через GetWindowPos, ко второму окну прописать SetWindowPos(позиция окна с табами + отступ по Х), но способ костыльный т.к перетаскивание меню будет работать только от окна с табами, но при желании это можно пофиксить.
Собственно, а нахуя такие костыли, если всё уже сделано в самой библиотеке...
 
bluedream.ltd
Статус
Оффлайн
Регистрация
4 Янв 2020
Сообщения
3,000
Реакции[?]
1,275
Поинты[?]
0
Собственно, а нахуя такие костыли, если всё уже сделано в самой библиотеке...
Собственно потому что надо уметь читать, у тебя 90% элементов зависит от этих стайлов, если ты пропишешь паддинг тебе потом придется уже дохуя покАстылить.
 
Участник
Статус
Оффлайн
Регистрация
15 Янв 2021
Сообщения
492
Реакции[?]
289
Поинты[?]
79K
Собственно потому что надо уметь читать, у тебя 90% элементов зависит от этих стайлов, если ты пропишешь паддинг тебе потом придется уже дохуя покАстылить.
PushStyleVar тогда уж в помощь, но никак не рендер каких-то прямоугольников, окон и т.п. Это конечно чисто ИМХО

P.s. никто не мешает написать ещё парочку переменных, отвечающих за определенные элементы. но это сложно и вообще не для пастеров:LUL:
 
bluedream.ltd
Статус
Оффлайн
Регистрация
4 Янв 2020
Сообщения
3,000
Реакции[?]
1,275
Поинты[?]
0
PushStyleVar тогда уж в помощь, но никак не рендер каких-то прямоугольников, окон и т.п. Это конечно чисто ИМХО

P.s. никто не мешает написать ещё парочку переменных, отвечающих за определенные элементы. но это сложно и вообще не для пастеров:LUL:
Блять что ты несешь(
PushStyleVar тогда уж в помощь, но никак не рендер каких-то прямоугольников, окон и т.п. Это конечно чисто ИМХО
Получается что окно рендерить это костыль, ну ты ахуенно придумал дружок.
Или зарендерить прямоугольник через дравлист, молодец
 
Сверху Снизу