Получение указателя виджета, созданного в QtDesigner

#c #qt

#c #qt

Вопрос:

Я довольно новичок в использовании Qt и C , поэтому; пожалуйста, потерпите меня.

Прямо сейчас я разрабатываю пользовательский интерфейс с использованием QtDesigner и хочу изменить минимальное значение ползунка на основе текущего значения другого ползунка.

Я подумал, что мне нужно будет найти указатель на ползунок, который я хочу изменить, но я не уверен, как я это сделаю.

Мне интересно, было ли это возможно или мне нужно будет создать пользовательский интерфейс в коде.

Спасибо.

Ответ №1:

 ui->yourUiItem
  

содержит указатель на ваш элемент пользовательского интерфейса, если только вы не назвали объект пользовательского интерфейса по-другому.

Я говорю о: Ui::YourClass *ui; например.


Вы можете получить к нему доступ так же, как к объекту, созданному вручную.

Например ui->yourUiItem->text( )

Комментарии:

1. Спасибо, я понял это! Мой объект пользовательского интерфейса не был указан в качестве указателя, поэтому я просто сделал что-то вроде этого: Ui::QtCvClass *uiPtr = amp;ui

2. Я так понимаю, вам не хватает ui( new Ui::QtCvClass ) и ui->setupUi( this ) вашего конструктора, и delete ui вашего деструктора?

3. В моем конструкторе есть то, о чем вы говорите, но мне не хватает delete ui моего деструктора. Это необходимо?

4. @EndingLegacy Если у вас уже есть переменная-член ui , вам не нужно преобразовывать ее в указатель. Просто используйте ui имеющуюся у вас переменную.