crossplatform.ru

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


  Ответ в QMainWindow
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

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


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 14.9.2011, 19:29
  gpepsi, прочитай своё первое сообщение и объясни мне, почему тема называется "QMainWindow"
ilyabvt Дата 14.9.2011, 14:38
 
Цитата
выставляю в moveEvent setGeometry(event->oldPos) и ухожу в рекурсию

Конечно уходите, т.к. при возврате в старую позицию у вас вызывается событие moveEvent которое имеет уже другую старую позицию.
Попробуйте через setGeometry передавать конкретные числа (ну где у вас там угол экрана).
gpepsi Дата 14.9.2011, 13:18
 
Цитата(ssoft @ 14.9.2011, 14:03) *
Можно попробовать установить виджету атрибут

не помогло
ssoft Дата 14.9.2011, 13:03
 
Цитата(gpepsi @ 14.9.2011, 8:30) *
выставляю в moveEvent setGeometry(event->oldPos) и ухожу в рекурсию :)


Все правильно
Цитата
Warning: Calling setGeometry() inside resizeEvent() or moveEvent() can lead to infinite recursion.


Можно попробовать установить виджету атрибут
setAttribute( Qt::WA_Moved, false );

gpepsi Дата 14.9.2011, 7:30
 
Цитата(ilyabvt @ 13.9.2011, 18:09) *
В правый нижний угол перемещать вручную через setGeometry

это получилось

Цитата(ilyabvt @ 13.9.2011, 18:09) *
апретить перемещение можно убрав рамку (указать соответствующий флаг),

не хотел

Цитата(ilyabvt @ 13.9.2011, 18:09) *
если рамка обязательна то переопределять moveEvent.

выставляю в moveEvent setGeometry(event->oldPos) и ухожу в рекурсию :)
ilyabvt Дата 13.9.2011, 17:09
  В правый нижний угол перемещать вручную через setGeometry. Запретить перемещение можно убрав рамку (указать соответствующий флаг), если рамка обязательна то переопределять moveEvent.
gpepsi Дата 13.9.2011, 16:25
  у в tray висит иконка. при двойном щелчке открывается форма.
Нужно отрисовать ее в правом нижнем углу экрана и запретить перетаскивание.

Можно ли это указать форме флагами или нужно отлавливать события перемещения и и отрисовывать самому в конкретном месте ?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 6.10.2022, 12:43