Russian Qt Forum
Сентябрь 30, 2024, 10:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Размеры QDialog  (Прочитано 5157 раз)
qtист
Гость
« : Июль 02, 2009, 14:54 »

Пытаюсь узнать размеры созданного диалога,
какие бы размеры не создал в дизайнере(хоть на весь экран,хоть в несколько пикселей)
 - возвращаются всё время размеры 640х480
Код
C++ (Qt)
ParamATC::ParamATC(QWidget *parent,QPoint pos)
: QDialog(parent)
{   int h,w;
 
  h=geometry().height();//высота диалога
  w=geometry().width();//ширина диалога
 
}

чё не так? Непонимающий
Записан
oxotnik
Гость
« Ответ #1 : Июль 02, 2009, 15:01 »

инициализацию ui забыл?

Dialog::Dialog(QWidget *parent)
    : QDialog(parent), ui(new Ui::Dialog)
Записан
qtист
Гость
« Ответ #2 : Июль 02, 2009, 15:21 »

Не врубился так надо?

ParamATC::ParamATC(QWidget *parent,QPoint pos)
         : QDialog(parent),ui(new Ui::ParamATC)


дык рыгается
Записан
spirit
Гость
« Ответ #3 : Июль 02, 2009, 15:26 »

покажи свой ашник формы.
Записан
spirit
Гость
« Ответ #4 : Июль 02, 2009, 15:28 »

нужно ж заюзать setupUi.
Записан
oxotnik
Гость
« Ответ #5 : Июль 02, 2009, 15:28 »

Код
C++ (Qt)
//в *.h
 
namespace Ui
{
   class Dialog;
}
 
class Dialog : public QDialog
{
   Q_OBJECT
 
public:
   Dialog(QWidget *parent = 0);
   ~Dialog();
 
private:
   Ui::Dialog *ui;
};
 
// в *.cpp:
 
#include "dialog.h"
#include "ui_dialog.h"
 
Dialog::Dialog(QWidget *parent)
   : QDialog(parent), ui(new Ui::Dialog)
{
   ui->setupUi(this);
int h = geometry().height();
int w = geometry().width();
}

PS: посмотри как это Creator делает
Записан
qtист
Гость
« Ответ #6 : Июль 02, 2009, 15:56 »

Блин,который раз забываю,что всё надо делать после

ui.setupUi(this);

во мудило(это я про себя) Строит глазки
Записан
SABROG
Гость
« Ответ #7 : Июль 03, 2009, 08:42 »

А еще не забывай, что в конструкторе значения параметров виджетов могут быть неверными до того момента пока программа не войдет в цикл событий. Всё-таки именно в этот момент и начинают работать layouts изменяя размеры и положение дочерних виджетов.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.092 секунд. Запросов: 20.