0 / 0 / 0
Регистрация: 28.12.2020
Сообщений: 9
|
|
Из файла в несколько текстбоксов09.07.2021, 13:02. Показов 4496. Ответов 15
У меня есть файл, в котором несколько строк.
Вот например строки: Часто ли Вы испытываете тягу к новым впечатлениям, чтобы отвлечься, испытать сильные ощущения? Часто ли Вы чувствуете, что нуждаетесь в друзьях, которые могут Вас понять, ободрить, выразить сочувствие? Считаете ли Вы себя беззаботным человеком? Мне нужно каждую строку записать в отдельный richtextbox/textbox. Как это сделать?(((
0
|
09.07.2021, 13:02 | |
Ответы с готовыми решениями:
15
Несколько текстбоксов
Запрет ввода символа в несколько текстбоксов |
Just Do It!
![]() |
||||||
09.07.2021, 15:56 | ||||||
используйте паттерн MVC
![]() Кликните здесь для просмотра всего текста
то была шутка. используйте мощь C++/CLR: его способность работать со стандартным С++. тогда пИшите на плюсах стандартный код: (консольный тест.)
2. к каждой строке можно обратиться по номеру. 3. обращение очевидно можно повесить на батон так чтобы номера их соответствовали. Далее вам нужно разобрать два момента. (это нужно сделать только один раз и этого вам хватит на всю жизнь) 1. маршалинг: преобразование типов из неуправляемого кода в управляемый. 2. заюзать(речь про конверторы) UTF-8 кодировку, для хранения русского текста в файлах.
0
|
Администратор
![]() ![]() |
|
09.07.2021, 16:17 | |
А можно ничего не разбирать, а использовать File::ReadAllLines который вернет массив строк, которые легко и просто записать в textBox-ы.
1
|
Just Do It!
![]() |
|
09.07.2021, 16:33 | |
а можно полностью пересесть на шарп: управляемый код форева.
легаси же грузить через динамические либы. НО! это же C++\CLR ! разумеется, ещё нужны кое- какие усилия, чтобы научиться им наслаждаться. ![]() OwenGlendower, есть достаточно людей которые ничего не хотят знать про NET фрейморк, но уже хотят юзать редакторы форм.
0
|
Администратор
![]() ![]() |
|
09.07.2021, 20:32 | |
XLAT, я это понимаю и не призываю использовать только управляемые классы. Речь о другом. В данном случае использование STL усложняет код не давая видимой пользы. В том время как решение с родным File::ReadAllLines будет заметно короче и проще. Почему бы не брать лучшее из двух миров.
Не лучше Qt таким людям использовать? Microsoft давно не развивает Windows Forms для C++/CLI. И такое ощущение что поддержка Windows Forms это скорее proof of concept чем законченный продукт. Чего только стоит отсутствие разделения на h и cpp файлы. Весь код валят в h файл, а если разделить код как полагается, то дизайнер не может уже найти обработчики событий.
0
|
Just Do It!
![]() |
||||||
09.07.2021, 21:39 | ||||||
ок,
выше код в таком виде:
- добавил формс-итем. - на форму кинул три батона и текстбокс. - рядом положил текстовик в utf-8 кодировке как оно выглядит: хм, написание данной демки ваще не написание, а сплошная копипаста из других демок. весь солушен тут:
1
|
0 / 0 / 0
Регистрация: 28.12.2020
Сообщений: 9
|
|
09.07.2021, 22:22 [ТС] | |
Блин, не знаю, правильно ли меня поняли. Суть программы - психологический тест, в котором 57 вопросов, вот я и хочу как-то автоматизировать (грубо говоря) запись строк в каждый текст бокс (один текст бокс = один вопрос). Думаю, не совсем правильно вручную прописывать.. Также, преподаватель сказал читать из файла и лучше реализовать через текст боксы..(из библиотеки using namespace System::IO; ). ((
0
|
Администратор
![]() ![]() |
|
10.07.2021, 11:37 | |
Katherina_S, опишите точнее задачу. Вы хотите сразу вывести все 57 вопросов?
0
|
0 / 0 / 0
Регистрация: 28.12.2020
Сообщений: 9
|
|
10.07.2021, 12:06 [ТС] | |
На первой картинке как выглядит файл с вопросами
На второй как выглядит форма - на одну форму вмещается всего 20 вопросов, поэтому в дальнейшем планирую при нажатии кнопки "далее" обновлять форму, записывать в каждый текст бокс другой вопрос по списку после 20. На третьей картинке просто в текст бокс вставила текст, чтобы было понятно как это все выглядит.
0
|
Администратор
![]() ![]() |
||||||
10.07.2021, 15:54 | ||||||
Katherina_S, если совсем просто делать, то сначала объявляем поле с массивов TextBox-ов (назовем его
textBoxes ) и инициализируем его. Кстати почему вы используете текстовые поля, а не метки (Label)? Начальное заполнение тогда будет выглядеть так
Но это решение решает только часть задачи. Ведь нужно не только выводить вопросы, но и запоминать ответы. По хорошему я бы сделал класс который хранит вопрос (String^) и ответ (Nullable<Boolean>). В самом начале мы создаем колекцию всех вопросов и затем выполняем data binding части этой коллекции к форме. В классе необходимо реализовать интерфейс INotifyPropertChanged чтобы при выборе ответа сразу вносилось соответствующее изменение в нужный вопрос. С кодом не помогу. Я меня нет под рукой VS с поддержкой C++.
1
|
0 / 0 / 0
Регистрация: 28.12.2020
Сообщений: 9
|
|
10.07.2021, 16:23 [ТС] | |
Не совсем все понятно с кнопкой далее, но это уже зацепка! Буду разбираться) Спасибо большое за помощь и отзывчивость!
Добавлено через 26 минут А вы можете подсказать как объявить массив текст боксов? Я обшарила интернет, но ничего не подходит/не работает. А вы думаете, что с label было бы логичнее/проще?
0
|
Администратор
![]() ![]() |
||||||
10.07.2021, 18:01 | ||||||
По запросу "C++/CLI array" находится страница How to: Use Arrays in C++/CLI
1
|
Администратор
![]() ![]() |
|
11.07.2021, 09:58 | |
Katherina_S, массив чисел или строк вы знаете как создать и заполнить?
0
|
11.07.2021, 09:58 | ||||||
Помогаю со студенческими работами здесь
16
Как поместить несколько текстбоксов в groupbox? Как на форму добавить во время выполнения программы несколько текстбоксов
Модификация кода, после ввода инфы в несколько текстбоксов между инфой ставится "and" и запись присущая каждому текстбок Как, используя fstream, считать текст из файла, содержащего несколько признаков конца файла? Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|
Метод с двумя буферами (или double buffering) или ping-pong buffering
Hrethgir 02.04.2025
Из ответов LM модели.
Метод, который предполагает использование двух массивов для хранения промежуточных результатов сложения векторов, обычно применяется в сценариях, где необходимо минимизировать. . .
|
На любовном киберфронте
Alexander-7 01.04.2025
Недавно на одном малоизвестном сайте знакомств мною заинтересовалась девушка:
«Текст немного странный. Но, судя по адресу почты, иностранка», – подумал я. Поколебавшись пару суток, я ответил ей:. . .
|
Как работает Node.js изнутри
run.dev 29.03.2025
Node. js изменил подход к разработке веб-приложений, позволив использовать JavaScript не только на стороне клиента, но и на сервере. Созданный в 2009 году Райаном Далем, этот открытый,. . .
|
Моки в Python: Mock Object Library
py-thonny 29.03.2025
Тестирование кода требует особого подхода, когда речь идёт о компонентах, взаимодействующих с внешним миром. Мы часто сталкиваемся с непредсказуемостью HTTP-запросов, чтением данных из базы или. . .
|
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
|
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
|
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
|
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
|
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
|