crossplatform.ru

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


  Ответ в Как сделать просчёт размеров всех элементов окна и самой формы до вызова show
Введите ваше имя
Подтвердите код

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

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


Последние 10 сообщений [ в обратном порядке ]
ViGOur Дата 28.11.2008, 12:50
  А ты попробуй создать тестовый проект, набросать на виджет виджетов и переопределить showEvent:
void test::showEvent ( QShowEvent *pEvent)
{
    QList<QWidget*> listChild = findChildren<QWidget*>();
    foreach( QWidget *pWnd, listChild)
    {
        QString sz = pWnd->objectName();
        const QRect &rect = pWnd->geometry();
        int n = 0;
    }

    QWidget::showEvent( pEvent);
}
и увидишь, что координаты дочерних виджетов правильные!

Как видишь в данном случае pEvent не нужен. :)
flankerr Дата 28.11.2008, 12:00
  Зачем мне эвент то?)) если эвент придёт ДО вызова show то элементы ещё будут НЕ просчитаны. А если он придёт после вызова show то диалог уе будет выведен на экран. Функция show инициаолизирует элементы и выводит их на экран.
Впрос в том КАК инициализировать размеры НО не выводить на экран ? Конечно можно тупо залезть в show и переписать исходник со всемм вытекающими но может есть какойнить ЛЕАЛЬНЫЙ способ ?
ViGOur Дата 28.11.2008, 10:46
  1. посмотри void QWidget::showEvent ( QShowEvent * event ) [virtual protected], для этого правда тебе прийдется переопределять класс виджета.
2. А что говорит geometry и Геометрия окна?
flankerr Дата 27.11.2008, 18:14
  1. Как сделать просчёт размеров всех элементов окна и самой формы до вызова show ?
т.е. если до вызова show у дилога спросить его ширину он выдаст фигню (в том случае если рамер не заан фикисровано)


2.Как узнать ширрину виджета таблицы ? ВНИМАНИЕ! сумма ширин всех столбцов НЕ равна (а точнее меньше) ширины виджета таблицы
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 5.5.2024, 20:07