Я пытаюсь сделать функцию, заменяющую текст внутри QLineEdit, когда пользователь хочет вернуться, является именем по умолчанию с помощью QPushButton.Невозможно использовать QString в QLineEdit или QComboBox в качестве параметра
Здесь код становится «сохраненным».
`//Must get information in the DB
lineditPlayerName = new QLineEdit("Nouveau Profil");
nameAsDefault = new QString(lineditPlayerName->text());
languageAsDefault = new QString(comboBoxlanguage->currentText());`
Это функция я использую, чтобы изменить значение по умолчанию обратно
//This code works
void ProfileManager::revertName(){
lineditPlayerName->setText("nameAsDefault");
btnRevertName->setEnabled(false);
}
Но мне это нужно так:
//This code does'nt
void ProfileManager::revertName(){
lineditPlayerName->setText(NameAsDefault);
btnRevertName->setEnabled(false);
}
Я не могу заставить его работать его дайте мне эту ошибку: нет подходящей функции для вызова 'QLineEdit :: setText (QString * &)'
Благодаря
Вам действительно нужно динамически выделять QString? В Qt мне почти никогда не нужно это делать. – drescherjm
Я читал учебник онлайн, и это касается всех образований, которые у меня есть ... Если вы можете объяснить, почему мне не нужно это делать, это будет оценено и вы сможете объяснить, как это сделать. – Chax
Вам нужен член 'QString nameAsDefault' вашего класса, а не' QString * nameAsDefault' (указатель на строку). Затем вы устанавливаете его, просто записывая 'nameAsDefault = lineeditPlayerName-> text()'. –