Я установил QComboBox в виджете, и я добавить элементдоступа выбранное значение QComboBox
for(int i = 1; i < 31; i++)
{
ui->combo->addItem(QString::number(i));
}
и в слоте QComboBox Я хочу, чтобы получить выбранное значение
int index =ui->combo->itemData(ui->combo->currentText());
но есть ошибка: 316: error: no matching function for call to 'QComboBox::itemData(QString)'
если я использую currentIndex
вместо currentText
возвращение 0 при печати; AddItem получить QString,
void QComboBox::addItem(const QString & text, const QVariant & userData = QVariant())
и ItemData работа с currentIndex,
Я использую InsertItem и имеет ошибку САЕ, так как можно установить значение или текст и получить slected значение ??
@thuga это неправильный тип редактировал – g1331
Почему вы не JUSE использовать 'индекс Int = ui-> combo-> currentIndex();'? В коде, который вы отправили, вы никогда не устанавливаете какие-либо данные в свой поле со списком, поэтому 'itemData' возвращает 0. Или если вы хотите, чтобы текущий текст просто использовал' QString selected_text = ui-> combo-> currentText() ; '. – thuga
@thuga, если я использую этот 'index = ui-> combo-> currentIndex();' когда я запускаю программу get currentindex без выбора, например, если я установил от 1 до 31 при запуске без select currentindex, будет 1 – g1331