crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

Trisch
  опции профиля:
сообщение 3.5.2012, 7:08
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 379
Регистрация: 30.1.2012
Из: Запорожье
Пользователь №: 3169

Спасибо сказали: 24 раз(а)




Репутация:   0  


Я вот написал "окно верхнего уровня". И теперь мне надо заставить его перемещаться по экрану.

я сделал это так
void SetStyle::mousePressEvent(QMouseEvent *event)
{
    if (event->button() & Qt::LeftButton) {
        x1 = event->pos().x();
        y1 = event->pos().y();
        std::cout << x1 << " ";
    }

}

void SetStyle::mouseMoveEvent(QMouseEvent *event)
{
    double dx;
    double dy;

    ox = geometry().x();
    oy = geometry().y();

    x2 = event->pos().x();
    y2 = event->pos().y();

    if ((x1 != x2) || (y1 != y2)) {
        dx = x2 - x1;
        dy = y2 - y1;
        move((ox + dx), (oy + dy));
    }
    x1 = x2;
    y1 = y2;
}


но оно передвигается рывками и курсор мыши меняет свое положение относительно этого окна. как это можно исправить?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 15.7.2025, 17:00