|
Mr.White
|
|
Загрузить в TextBox часть текстового файла13.02.2010, 00:28. Показов 2170. Ответов 9
Метки нет (Все метки)
Скажу прямо: я пишу текстовый квест на Visual Basic, но мои знания сего языка где-то на уровне нуля. Я буду вам дико благодарен, если вы мне поможете понять некоторые вещи.
1) При нажатие на кнопку, в Text Box появляется текст из заданного файла. Это не удобно, потому что у меня, к примеру, пару сотен таких файлов. Как сделать, так что бы писалось только определенная часть из одного файла. Пробовал Line Input, но тогда печатается по строкам. Можно ли как-то сделать чтобы печатался только тот текст который в текстовом файле например выделен кодом ? 2) Про кнопки. Можно сделать так что бы текст в кнопках менялся в зависимости от того какая часть текстового файла сейчас открыта? Буду признателен за любой ответ (совет) по теме. |
|
| 13.02.2010, 00:28 | |
|
Ответы с готовыми решениями:
9
Как загрузить одну строку в массив из текстового документа (или textbox) Как загрузить код из текстового файла?
|
|
0 / 0 / 0
Регистрация: 15.12.2009
Сообщений: 15
|
||||||
| 13.02.2010, 06:40 | ||||||
|
Я так понял, тебе нужно чтобы в текст бокс грузилась из файла только часть которая находится между двумя
? если так, то можно попробовать вот так:
, маленькое <p> уже не прохиляет. смысл в том что ты считываешь файл в переменную, потом по сочетанию делишь полученный текст на части, которых если использовать два в тексте - будет естественно три, а потом потмещаешь среднюю часть (tmp(1)) в свой текстбокс. текст на кнопке можно задавать свойством Caption, например Button1.Caption='My button'. Просто я не совсем понял, что именно ты хочешь на кнопке написать, а то пример тоже дал бы.
0
|
||||||
|
Mr.White
|
|
| 14.02.2010, 03:50 | |
|
Суть понял. Спасибо за разъяснение!
А вот про кнопки… объяснить тяжело. Вот к примеру на кнопке написано «Открыть дверь» (я ведь квест пишу), пользователь нажимает на эту кнопку, в текст боксе появляется информация, и теперь на кнопке написано «идти дальше» или «закрыть дверь». Что-то в этом роде. То есть что бы текст менялся динамически. Еще раз спасибо за помощь с текстом! |
|
|
Comanche
|
||||||
| 14.02.2010, 10:56 | ||||||
|
||||||
|
Mr.White
|
||||||
| 16.02.2010, 00:45 | ||||||
|
Все работает! Спасибо тебе огромное за помощь! Особенно благодарен за совет использовать Case Select, а то плодить if-ы действительно не слишком прикольно.
Только у меня появились еще вопросы ![]() 1. Например пользователь кликает на кнопку «идти дальше» и в окне вместо одной кнопки появляется уже две. Затем когда он нажимает одну из них, одна пропадает оставляя опять одну. Или наоборот появляется еще одна. Можно так сделать? Что бы кнопки появлялись и пропадали по мере надобности. 2. Наверное, самый ламерский вопрос. К примеру, у меня в программе написано:
3. У меня есть «специальные» кнопки в окне которые не изменяются (вступление, руководство, сохранить, загрузить и выход). Как сделать, так что бы после нажатия например на кнопку «начать игру» доступ к «специальным» был закрыт? P.S. На первой мой вопрос можешь без особой надобности не отвечать – я уже адаптировался и так (все шесть кнопок одновременно видны в окне только на пассивных надпись «пусто» и они соответственно пусты). |
||||||
|
Messir
|
|
| 16.02.2010, 03:54 | |
|
1. Можно прятать ненужные в данный момент кнопки. Т.е. btn_stat_game(i).Visible=False - спрятать кнопку с индексом i. А чтобы показать - присвоить этому свойству кнопики True соответственно.
2. Полю Text4 надо поставить свойство Multiline = True, а в коде писать Text4.Text = 'сила - ' & strenght & vbCrLf & ' ловкость - ' & dex …. (vbCrLf - константа для разрыва строки). А вообще в данном случае, по-моему, лучше использовать Label - ведь эта информация не должна редактироваться, только отображаться. Для Label'a код будет тот же, что и для TextBox'a, но никаких свойств менять не надо - он многострочный по умолчанию. 3. Доступность/Недоступность кнопок (да и других объектов тоже) - свойство Enabled. Если ему присвоить True, то объект доступен, если False - нет. (например, btn_save.Enabled=False - сделать кнопку btn_save недоступной). |
|
|
Mr.White
|
|
| 17.02.2010, 00:36 | |
|
спасибо, вам огромное за помощь!
только у меня опять появился вопрос (правда это не совсем вопрос...) Не знаю как сделать в игре бой. Думаю делать через Option Button только не знаю как этот зверь работает. Суть в том чтобы пользователь выбирал куда ударить (три варианта: в голову, в грудь, в ногу) и куда поставить блок (тоже три: голова, грудь, нога) и затем нажал кнопку «передать ход противнику». Потом чтобы в случайном порядке компьютер ударял игрока и тоже ставил бы блок. Вся информация о битве пишется в текст боксе, типа «вы удрали противника в голову и он получил –6 урона, взбешенный после этого противник вырвал у вас печень и вы получили –20 урона». |
|
|
Mr.White
|
|
| 22.02.2010, 02:13 | |
|
эээ... пипл?
|
|
|
Messir
|
|
| 22.02.2010, 06:09 | |
|
Что касается OptionButton'a, то тут тебе надо будет реализовать две группы. Для этого каждую группу надо расположить в отдельном контейнере, например во Frame или PictureBox. Тогда группы будут работать независимо друг от друга. Выбран нли какой-то из OptionButton'ов, определяет его свойство Value - если оно равно True, то выбран, если False - то нет. Аналогично, присваивая значения этому свойствву, можно изменять выделение.
Разумно давать OptionButton'ам в группе одинаковые имена, т.е. организовать массив элементов управления (они тогда будут отличаться свойством Index), при щелчке на любом из них будет вызвано общее для всех их событие Click, но туда будет передан пераметр-индекс, который мы и запоминаем. Можно и не делать массива ЭУ, а просто при щелчке на каждом присваивать временной глобальной переменной соответствующее значение. Но тогда и обработчиков событий будет больше, и неразберихи тоже... Поэтому советую все же первый вариант. |
|
|
Mr.White
|
|
| 24.02.2010, 07:58 | |
|
В принципе разобрался. Вот только я применял значения переменных. А вот как делать то же самое только с индексами я, честно говоря, не знаю. Может, объяснишь (в примерах…)?
|
|
| 24.02.2010, 07:58 | |
|
Помогаю со студенческими работами здесь
10
Чтение текстового файла в TextBox построчно Как скопировать содержимое текстового файла в TextBox? Как загрузить часть картинки откуда-нибудь в PictureBox? Как можно загрузить в TextBox большой текст?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|