![]() |
|
|
![]()
|
|
| mr.Anderson |
|
||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Так. Идея такая. Программа использует файл конфигурации, задающий размер формы, ее цвет и цвет надписей (вместе 4 параметра). Надо при создании формы файл конфигурации (он называется у меня system.ini) считать, и в соответствии с полученными данными "сотворить" форму. Структура файла конфигурации такая:
Все, кроме последних четырех строк, может меняться! Теперь код, который я написал. В нем недостает только поиска данных в файле. Плиз помогите с этим. Вот мой "каркас":
|
||||
|
|||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
эээ... а TIniFile чем не нравится?
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Да хотелось бы самому сделать.
Только плиз с объяснениями. Это сообщение отредактировал(а) sim7 - 3.10.2005, 19:03 |
|||
|
||||
| AntonChik |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 4.10.2005 Где: Красноярск Репутация: 1 Всего: 1 |
2Sim7: ты знаешь,мне кажется у тебя одна большая проблема , и ты должен назвать ее "Хочу научиться парсить строки и тексты "... Видать ты рано в билдер залез, раз до сих пор хочешь всё до последнего кирпичика сделать своими ручками...Хотя дело твое.Твои стремления мне понятны.
--------------------
"Человек притаился за деревом. За широким огромным деревом. Он выглядывал тихонько и прятался. Но его никто не преследовал." (с) Хорги |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Всем спасибо за советы, но я разобрался. Сообразил. Теперь мой INI-файл вполне работает.
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Если кому-то интересно, как это сделано, то вот вам код:
Вот и весь сказ. К слову, функция open_file - нестандартная, это моя функция. В принципе, она только немного лучший аналог функции fopen. Думаю, тот, кто будет читать код, разберется. Если нет, то попросите меня или кого-нить еще объяснить. Это сообщение отредактировал(а) sim7 - 4.10.2005, 16:42 |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Все таки проще и более красиво выглядело бы использование TIniFile или TMemIniFile
А переход по goto из if в else
я бы на Вашем месте лучше бы никому не показывал -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Почему? Неужели использование меток уж настолько плохо? А чем бы вы предложили в моем коде их заменить?
|
|||
|
||||
| Vyacheslav |
|
||||||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
if- else - на в переводе на руский язык означает "если выполняется условие то делаем это, иначе делаем другое. Вы же во первых использовали goto, применение которого в С++ весьма не однозначно, во-вторых при этом убили сам смысл if-else. Это говорит о том, что у вас проблемы с составлением алгоритмов даже для процедурной части. Об ОПП здесь вообще речи нет, хотя с точки зрения обучения имеем и пытаясь перевести все это на нормальное ООП мы имеем сущность : конфигурационный файл с атрибутами. Допустим, если бы для работы с конфигурационным файлом Вы написали свою оболочку-враппер, то все это уложилось бы в тройку пару строчек типа
И кстати о птичках. Вы открываете файл с помощью оpen_file(), а потом для загрузки строк опять открываете с помощью
Как же с принципом "все своими руками". Вы бы уж тогда прочитали все из уже открытого файла и зпихнули бы это ListBox1. А так нечестно Тогда уж лучше сразу открыть TFileStream и использовать его. Ну и последнее. Раз уж используете TStrings и загружаете его с помощью LoadFromFile, то стоит обратить на его проперти Name и Value. Надеюсь по хелпу вы узнаете, что в Вашем случае будет в них лежать. Добавлено @ 09:13 Да и вот так никто не далает
Тогда уж вот так
Добавлено @ 09:19
Вот эта
Заменяется простым убиранием else -------------------- С уважением, Вячеслав Ермолаев |
||||||||||||
|
|||||||||||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |