При изменении разрешения экрана(окна) кнопки работают по их прошлым координатам.

SFML и C++ Уроки \ Разработка игр Форумы SFML Graphics При изменении разрешения экрана(окна) кнопки работают по их прошлым координатам.

В этой теме 1 ответ, 2 участника, последнее обновление  barbar 11 мес., 4 нед. назад.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Автор
    Сообщения
  • #5519

    Fanze
    Участник
    Сообщений:0

    Зарегистрирован:
    05.05.2023

    Репутация:0

    Здравствуйте, я пытаюсь сделать настройку изменения разрешения окна по кнопке (под разрешение другого компьютера) через функцию window.setSize. Проблема заключается в том, что когда я нажимаю на созданную мной кнопку вид окна меняется под заданное мной разрешение, но вот кнопки остаются на своих прошлых координатах вне зависимости от разрешения монитора. То есть визуально кнопка сдвинулась вместе с видом окна, но фактические осталась где-то там, где её быть уже не должно(прошлые заданные координаты) и работает только если нажать в зону прошлых координат кнопки. Хотел бы очень сильно узнать как это исправить, как сделать так, чтобы кнопка подстраивалась под измененное в разрешении окно.

    P.S. Только осваиваю SFML и не сильно понимаю как это можно было бы сделать, уже много способов перепробовал.

    Вложения:
    You must be logged in to view attached files.
    #5523
    +1

    barbar
    Участник
    Сообщений:36

    Зарегистрирован:
    27.06.2015

    Репутация:16

    Нужно после изменения размера окна применить новый view к окну, в visible area должны быть соотвественно новые размеры окна
    Примерно так
    // update the view to the new size of the window
    sf::FloatRect visibleArea(0, 0, event.size.width, event.size.height);
    window.setView(sf::View(visibleArea));

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)

Для ответа в этой теме необходимо авторизоваться.