2012-06-06 2 views
1

у меня есть этот код:кварты: QInputDialog :: GetText не работает

bool ok;     
QString text = QInputDialog::getText(this, tr("Set Text"), tr("Text:"), QLineEdit::Normal, this->text(), &ok); 

if (ok && !text.isEmpty()) 
{ 
    this->setText(text); 
    aggiorna_text_t(); 
} 

Но результат в том, что окно, а кнопки полностью черные, только текст виден, и когда я изменить текст в окне не перерисовывает его, поэтому текст перезаписывается.

Что не так?

+0

Какая платформа? Используете ли вы таблицы стилей или модификации палитры? – cmannett85

+0

Я не думаю, что на это можно ответить без каких-либо подробностей о платформе и остальной части проекта. У вас есть минимальный пример, где этот код работает * не *? – Gnosophilon

+0

Я использую модификации окон и таблиц стилей для другого объекта qt. Это QLabel, и когда щелчок мышью appaer меню, где я могу установить текст. – user1439500

ответ

0

Чтобы устранить это я добавил эту строку:

bool ok;    

**this->setStyleSheet("QMenu {background-color: rgba(255,255,255,255);}");** 
QString text = QInputDialog::getText(this, tr("Set Text"), tr("Text:"), QLineEdit::Normal, this->text(), &ok); 

if (ok && !text.isEmpty()) 
{ 
    this->setText(text); 
    aggiorna_text_t(); 
} 
Смежные вопросы