К примеру открыл тот же видео плеер, не на весь экран.
Мое окно должно помещятся под ним. У меня на 10пикс. с каждой стороны выглядывает.
Сейчас я http://www.forum.crossplatform.ru/index.php?showtopic=6439 разобрался как получать положение окна.
Затем через setGeometry() ставлю свое окно куда нужно.
Но при переносе оно конечно остается на месте. Если setGeometry запихнуть в while то окно вообще не появляется.
Как сделать чтобы окно мое таскалось вместе с "родительским"?
И нужно что бы окно было всегда под тем окном, под которым оно прячится.
а? я не понял...
Родитель - не мое окно. Это плеер, или вообще что угодно.
Что значит сделать окном "явно"?
Какой фильтр?
Примерно так:
MainWindow::MainWindow(...)
{
botomWindow = BotomWindow(this, Qt::Window | Qt::FramelessWindowHint);
installEventFilter(botomWindow);
}
BotomWindow::eventFilter(QObject *obj, QEvent *event)
{
if ((event->type() == QEvent::Move) && (obj == parent()) ) {
// двигаем это нижнее оконо вслед за родителем
return true;
} else {
// standard event processing
return QObject::eventFilter(obj, event);
}
}
#!/bin/bash
xwininfo -id `wmctrl -l | grep SMPlayer | cut -c1-10` | grep 'Absolute upper-left X' | cut -c27-
xwininfo -id `wmctrl -l | grep SMPlayer | cut -c1-10` | grep 'Absolute upper-left Y' | cut -c27-
xwininfo -id `wmctrl -l | grep SMPlayer | cut -c1-10` | grep Width: | cut -c10-
xwininfo -id `wmctrl -l | grep SMPlayer | cut -c1-10` | grep Height: | cut -c11-
Может быть тогда тебе попробовать ловить события с помощью
bool QApplication::x11EventFilter ( XEvent * event ) [virtual]
Либо воспользоватся сторонней разработкой расширяющей Qt -- Qxt.
В частности классом http://libqxt.bitbucket.org/doc/0.6/qxtwindowsystem.html, с помощью него можно найти идентификатор окна и, потенциально, поставить на это окно фильтр событий
Судя по всему Qxt - лучший вариант.
Теперь буду пробовать.
Сам виноват...
Разобрался.
Qxt поставил. Работает.
Окно нахожу, создаю сове где нужно.
Как сделать фильтр этот, на перемещении родительского окна?
Так как сделать перехватчик/фильтр положения чужого окна?
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)