|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
Заполнить combobox данными из txt файла31.10.2022, 20:43. Показов 4537. Ответов 36
Метки работа с combobox (Все метки)
Здравствуйте! Есть вопрос по заполнению combobox в qt creator. Мне нужно его заполнить данными из txt файла, перерыл множество источником, мало что про это написано, большинство заполняют из бд. Мне нужно просто заполнить его из txt файла. Заполнять его данными в коде неудобно, проще исправить txt файл и загрузить заново. Буду рад, если кто может подсказать или показать пример. Спасибо.
0
|
|
| 31.10.2022, 20:43 | |
|
Ответы с готовыми решениями:
36
Заполнить dataGridView данными из txt файла ComboBox Заполнить из txt файла Заполнить combobox из файла txt |
|
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
|
||||||||||||||||||
| 01.11.2022, 20:55 | ||||||||||||||||||
|
Кликните здесь для просмотра всего текста
Смотрите, создали форму в дизайнере, накидали виджетов.
Пишите в конструкторе MainWindow
Что бы не писать постоянно ui->, можно сделать указатель на виджет. Например на форме есть виджет comboBox1 Пишите QComboBox* combo1=ui->comboBox1; Теперь вы можете обращаться к виджету, созданному в дизайнере, как combo1 Заморочился, переделал пример: Кликните здесь для просмотра всего текста
-Постарался максимально комментировать, если что не ясно-спрашивайте, этот код наверное сложноват для новичка -Заменил текстовый файл на .ini файл QSettings, он практически то же, что и .txt для того, чтобы в один файл можно было записывать данные от нескольких комбобоксов (и вообще любую инфу), а так же с заделом на будущее, предполагая замену или удаление полей в комбобоксе. -QSettings -самый простой способ сохранения в файл параметров "ключь-значение", и не надо париться с парсингом обычного текстового файла. Файл выглядит так:
Если сделаете его зарание, при запуске примера должны заполнится комбобоксы этими значениями. пример: Кликните здесь для просмотра всего текста
-Создайте проект без формы(снимите галочку "создать форму"), замените код в указанных файлах -Создайте .ini файл и укажите путь к нему в коде. Можете заполнить по шаблону выше -На форме два комбобокса и соотв. им поля ввода. -Вводите текст в поле ввода, нажимаете энтер-этот текст вставляется как поле в комбобокс, и записывается в файл. -После заполнения комбобоксов можете закрыть и запустить пример заново, введенные значения должны появиться в комбобоксах(прочитаться из файла) mainwindow.h
0
|
||||||||||||||||||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 02.11.2022, 08:32 [ТС] | |
|
sdf45, Спасибо за старания!) Начинаю понимать, но, в примере комбобоксы заполняете из полы вода, можно ли без поля ввода обойтись, просто загрузить файл в комбобоксы и там появятся элементы?Спасибо!
Добавлено через 7 минут sdf45, Спасибо за старания!) Начинаю понимать, но, в примере комбобоксы заполняете из полы вода, можно ли без поля ввода обойтись, просто загрузить файл в комбобоксы и там появятся элементы?Спасибо! Т.е получается так, что у меня на форме только два комбобокса и нет поля ввода, мне просто нужно вставить в каждый комбобокс файл с содержимым. Тут пример хороший и познавательный привели. Но интересует строка: combo1=new QComboBox; combo2=new QComboBox; Здесь Вы создаете отдельно два комбобокса, а если их создать сразу на форме, без кода,просто перенести, то к ним обратиться как нужно. Есть название: comboBox, comboBox_2, мы должны эти два виджета проинициализировать и обратиться, вот как правильно сделать? Спасибо!!
1
|
|
|
521 / 411 / 77
Регистрация: 29.05.2018
Сообщений: 1,363
|
|
| 02.11.2022, 09:04 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 02.11.2022, 09:06 [ТС] | |
|
[nick]Ender Che[/nick так не работает, неизвестная переменная пишет
0
|
|
|
521 / 411 / 77
Регистрация: 29.05.2018
Сообщений: 1,363
|
||
| 02.11.2022, 09:16 | ||
|
Мой совет такой же, как у уважаемого sdf45 - вначале освойте "накидывание" виджетов чисто через код, а уж потом занимайтесь "формошлёпством".
1
|
||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 02.11.2022, 09:18 [ТС] | |
|
Ender Che, через код я понял как делать, да работает, но хочется понять как с формой все это работает, имена comboBox, comboBox_2
Просто интересует, обратиться к виджету не проблема, все, но нужно ли создавать слот под комбы, функция ввода информации в комбы интересует, непосредственно на виджеты уже находящиеся на форме
0
|
|
|
521 / 411 / 77
Регистрация: 29.05.2018
Сообщений: 1,363
|
||||||
| 02.11.2022, 09:25 | ||||||
|
Антон___, попробую догадаться (без кода инициализации формы):
0
|
||||||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 02.11.2022, 09:30 [ТС] | |
|
Ender Che, да обращение такое, пробовал кодом добавить элементы все работает, но, нужна функция addItem, ее лучше описывать отдельно,создать строковую переменную и потом ее передать в параметр ui->comboBox->addItem(строковая переменная)
0
|
|
|
521 / 411 / 77
Регистрация: 29.05.2018
Сообщений: 1,363
|
||
| 02.11.2022, 09:37 | ||
void QComboBox::addItem(const QString &text, const QVariant &userData = QVariant()).
1
|
||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 02.11.2022, 11:48 [ТС] | |
|
Ender Che, можно пример самый простой, как в этом функции реализовать заполнение comboBox из файла? sdf45,
0
|
|
|
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
|
||||
| 02.11.2022, 11:58 | ||||
|
Кликните здесь для просмотра всего текста
Поля ввода просто для наглядности, что бы показать способ заполнения файла програмно. Как я уже писал, создаете в дизайнере виджеты на форме. Можете дать им свои имена, либо они генярятся автоматически. Доступ в программе к таким виджетам идет через ui-> Попробуйте для начала создать пустой проект с формой, разберитесь, как работать с виджетами в программе. Есть на ютубе уроки хорошие от Evileg, посмотрите. Пробуйте так же создавать виджеты вручную, что бы пришло понимание происходящего, когда создаете виджеты в дизайнере. Ознакомтесь с механикой сигналов и слотов, тогда поймете, что происходит, когда в дизайнере добавляется реакция на, например, нажатие кнопки. Добавлено через 7 минут
0
|
||||
|
521 / 411 / 77
Регистрация: 29.05.2018
Сообщений: 1,363
|
|||||||
| 02.11.2022, 12:12 | |||||||
0
|
|||||||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 10.11.2022, 08:45 [ТС] | |
|
sdf45, можете пожалуйста посмотреть и подправить, не получается по Вашим инструкциям, извините, если задергал? Вернулся к больной теме, но очень хочу добить ее))
0
|
|
|
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
|
||||||||||||||||||||||||||
| 10.11.2022, 12:45 | ||||||||||||||||||||||||||
|
Антон___, Вам всего то и надо было:
1.Добавить функцию загрузки из файла в класс anket Кликните здесь для просмотра всего текста
.h
2. Вызвать ф-ю загрузки в конструкторе класса anket для комбобокса на ui Кликните здесь для просмотра всего текста
3. Соответственно файл main.cpp выглядит Кликните здесь для просмотра всего текста
Так же: 4. Насколько я понимаю, загружать надо из файла "сотрудники.txt", который должен быть добавлен в ресурсы. Заменил его название на "employees.txt", добавил этот файл в новый ресурсный файл по префиксу "/" (у Вас какой-то многоэтажный ресурсный файл, содержащий опять же ресурсный файл...) 5. Остальной код не проверял. Добавлено через 18 минут зы забыл файл закрыть
0
|
||||||||||||||||||||||||||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 10.11.2022, 15:37 [ТС] | |
|
sdf45, на второй комбо и остальные тоже нужно класс создавать? С тем комбобоксом все получилось, но выводятся иероглифы, а не русский, в кодировке выбрал UTF-8, все равно иероглифы. У меня QT 5.12
0
|
|
|
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
|
|||
| 10.11.2022, 16:10 | |||
Сообщение было отмечено Антон___ как решение
Решениенет, зачем... Вы с++ впервые видите или это какой-то тонкий троллинг? Действуйте по аналогии с примером, - как загрузился текст в один комбобокс, так можно загрузить в любой другой, load(путь к файлу, ui-> второй комбо); Такие вопросы относятся скорее к азам с++ , чем Qt, у меня не получится научить Вас языку с++ ![]()
0
|
|||
|
1 / 1 / 0
Регистрация: 09.04.2019
Сообщений: 53
|
|
| 16.11.2022, 13:03 [ТС] | |
|
sdf45, спасибо))
0
|
|
| 16.11.2022, 13:03 | |
|
Заполнить combobox данными относительно другого combobox Дополнить .txt файл из другого .txt файла недостающими данными Заполнить comboBox данными из Excel Заполнить Combobox данными из столбца БД Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|