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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Изменение текста пункта меню  (Прочитано 2543 раз)
romsuhov
Гость
« : Декабрь 21, 2010, 22:04 »

Есть контекстное трей-меню и его пункт actShowHide. При попытке поменять текст пункта во время исполнения в одной из функций, программа вылетает с предложением отправить отчёт и с кодом -1073741819.

Код:
QAction* actShowHide = new QAction("Hide",this);
connect(actShowHide,SIGNAL(triggered()),this,SLOT(slotShowHide()));

trayIconMenu = new QMenu(this);
trayIconMenu->addAction(actShowHide);

void SystemTray::slotShowHide()
 {
     if (qc->isVisible())
        actShowHide->setText("Hide");
    else
        actShowHide->setText("Show");

      qc->setVisible(!(qc->isVisible()));
 }
Записан
BRE
Гость
« Ответ #1 : Декабрь 21, 2010, 22:17 »

В конструкторе находиться именно такая строка?
Код
C++ (Qt)
QAction* actShowHide = new QAction("Hide",this);
 

или такая?
Код
C++ (Qt)
actShowHide = new QAction("Hide",this);
 
Записан
romsuhov
Гость
« Ответ #2 : Декабрь 21, 2010, 22:22 »

В конструкторе находиться именно такая строка?
Код
C++ (Qt)
QAction* actShowHide = new QAction("Hide",this);
 
Да.
Записан
BRE
Гость
« Ответ #3 : Декабрь 21, 2010, 22:23 »

Да.
Тогда сделай как во втором варианте.
Записан
romsuhov
Гость
« Ответ #4 : Декабрь 21, 2010, 22:27 »

Тогда сделай как во втором варианте.
Заработало, спасибо!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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