crossplatform.ru

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


  Ответ в Свое окно под другим.
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
wiz29 Дата 11.2.2011, 17:33
 
Цитата(RazrFalcon @ 11.2.2011, 9:51) *
Так как сделать перехватчик/фильтр положения чужого окна?

Смотри пример в ответе #4, тока вместо MainWindow будет указатель на найденное тобой окно.
RazrFalcon Дата 11.2.2011, 9:51
  Так как сделать перехватчик/фильтр положения чужого окна?
RazrFalcon Дата 8.2.2011, 11:45
  Qxt поставил. Работает.
Окно нахожу, создаю сове где нужно.
Как сделать фильтр этот, на перемещении родительского окна?
RazrFalcon Дата 8.2.2011, 10:52
  Сам виноват...
Разобрался.
Litkevich Yuriy Дата 8.2.2011, 7:44
 
Цитата(RazrFalcon @ 7.2.2011, 23:49) *
Ссылку на описание какое то можно, пожалуйста?
в документации есть ссылка, на главной странице, ищи
RazrFalcon Дата 7.2.2011, 21:49
  Судя по всему Qxt - лучший вариант.
Теперь буду пробовать.
Litkevich Yuriy Дата 7.2.2011, 21:18
  Может быть тогда тебе попробовать ловить события с помощью
bool QApplication::x11EventFilter ( XEvent * event ) [virtual]

Либо воспользоватся сторонней разработкой расширяющей Qt -- Qxt.
В частности классом QxtWindowSystem, с помощью него можно найти идентификатор окна и, потенциально, поставить на это окно фильтр событий
RazrFalcon Дата 7.2.2011, 20:50
 
Цитата(Litkevich Yuriy @ 7.2.2011, 19:47) *
как ты намерен его координаты получать? И вообще определять, что оно изменило положение?

#!/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-

Только они аж после того как я переместил меняются <_<

Пример выше не подходит, вроде, это же не мое окно =/


Litkevich Yuriy Дата 7.2.2011, 20:47
  Примерно так:
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);
     }
}


Цитата(RazrFalcon @ 7.2.2011, 22:43) *
Родитель - не мое окно. Это плеер, или вообще что угодно.
как ты намерен его координаты получать? И вообще определять, что оно изменило положение?
RazrFalcon Дата 7.2.2011, 20:43
  а? я не понял...
Родитель - не мое окно. Это плеер, или вообще что угодно.
Что значит сделать окном "явно"?
Какой фильтр?
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 14.7.2025, 22:56