crossplatform.ru

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


  Ответ в Как показать QLabel...
Введите ваше имя
Подтвердите код

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

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


Последние 10 сообщений [ в обратном порядке ]
silver47 Дата 10.3.2011, 7:18
 
Цитата(Алексей1153 @ 9.3.2011, 9:55) *
В данном случае имеем утечку памяти :)
Цитата(Serg_yl @ 8.3.2011, 0:01) *
TRPO::TRPO(QWidget *parent)
: QWidget(parent)
{
QLabel *formyla = new QLabel ("Ответ: ");
}



Мне кажется, что если конструктор будет вызваться один раз, то не критично, при закрытии приложения это подотреться, но конечно же лучше или следить и удалять такое, или хотя-бы указывать родителя, чтобы этот QLabel удалился при удалении родителя. Кстати, достаточно указать родителя у главного Layout'а, который отвечает за размещение всех элементов формы.
Алексей1153 Дата 9.3.2011, 7:55
  В данном случае имеем утечку памяти :)
Цитата(Serg_yl @ 8.3.2011, 0:01) *
TRPO::TRPO(QWidget *parent)
: QWidget(parent)
{
QLabel *formyla = new QLabel ("Ответ: ");
}
silver47 Дата 8.3.2011, 7:18
 
Цитата(Командор @ 8.3.2011, 2:13) *
Я с Делфи переползаю, так что в С++ новичок, где моя ошибка?


В данном случае QLabel не удаляется при выходе из функции, просто его видно только в этой функции. Области видимости.
Командор Дата 8.3.2011, 0:13
 
Цитата(kwisp @ 8.3.2011, 0:03) *
Командор, Serg_yl,
вам обоим не мешало бы почитать основы С++


Я с Делфи переползаю, так что в С++ новичок, где моя ошибка?
kwisp Дата 8.3.2011, 0:03
  Командор, Serg_yl,
вам обоим не мешало бы почитать основы С++
Serg_yl Дата 7.3.2011, 22:24
  Спасибо! Все заработало так как надо!
Командор Дата 7.3.2011, 22:07
 
Цитата(Serg_yl @ 7.3.2011, 22:01) *
Всем добрый вечер!

Проблема в следующем.

Создал QLabel в одной функции, его заполнение происходит из другой функции (при этом хочется совместить строки Ответ: число). При сборке, Creat ругатется что не видит этот Qlabel. Как правельно написать эту строку записи в QLabel?

Спасибо!


QLabel нужно объявить в описании класса, а в конструкторе просто создавать. А у тебя объявляется в конструкторе, тут же создается, а при выходе из конструктора (а это обычная функция) объект уничтожается.
Serg_yl Дата 7.3.2011, 22:01
  Всем добрый вечер!

Проблема в следующем.

Создал QLabel в одной функции, его заполнение происходит из другой функции (при этом хочется совместить строки Ответ: число). При сборке, Creat ругатется что не видит этот Qlabel. Как правельно написать эту строку записи в QLabel?


TRPO::TRPO(QWidget *parent)
    : QWidget(parent)
{
QLabel *formyla = new QLabel ("Ответ: ");
}
void TRPO::slotFuncCos()
{
...Вычисления...
formyla->setText(QString::number(i));
}


Спасибо!
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.4.2024, 4:08