Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.12.2011, 20:43
GruSha1983 GruSha1983 вне форума
Прохожий
 
Регистрация: 04.08.2011
Сообщения: 7
Репутация: 10
По умолчанию Загружаем TreeView из файла

Доброго времени суток!
Вопрос следующий, есть TXT файл содержащий кучу всего
Код:
ACURA	
	MDX
	NSX
	RDX
	RL
ALFA ROMEO	
	8C
	Brera
ASTON MARTIN	
	ВСЕ
AUDI	
	A1
	A2
	A3
	ALLROAD
	Q5 
ИТД


Сейча реализация очень простая, в TreeView1 загружен этот TXT и под каждое из 800 с лишним значений методом проверки подбирается значение
Код:
if Node.AbsoluteIndex=( 1 ) then begin A:= 4.40 ; B:= 1.80 ; end;
if Node.AbsoluteIndex=( 2 ) then begin A:= 6.80 ; B:= 0.40 ; end;
if Node.AbsoluteIndex=( 3 ) then begin A:= 4.70 ; B:= 1.70 ; end;
if Node.AbsoluteIndex=( 4 ) then begin A:= 6.20 ; B:= 0.50 ; end;
if Node.AbsoluteIndex=( 5 ) then begin A:= 7.00 ; B:= 0.40 ; end;
if Node.AbsoluteIndex=( 6 ) then begin A:= 5.90 ; B:= 0.50 ; end;
и так до 836 значения

Как это можно оптимизировать? Выбирается только одна Марка и соответствующая модель, после чего TreeView1.enebled:=False;

PS Я очень упорный
Вложения
Тип файла: rar Unit1.rar (8.1 Кбайт, 2 просмотров)

Последний раз редактировалось GruSha1983, 20.12.2011 в 20:47.
Ответить с цитированием
  #2  
Старый 21.12.2011, 12:06
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

836 условий - это впечатляет. Собственно там весь код претендует на индийское происхождение.
И нафига люди придумали базы данных? Ведь все так чудно можно в код зафигачить.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #3  
Старый 21.12.2011, 13:03
GruSha1983 GruSha1983 вне форума
Прохожий
 
Регистрация: 04.08.2011
Сообщения: 7
Репутация: 10
По умолчанию

Подскажите на одной строке как сделать?
Ответить с цитированием
  #4  
Старый 21.12.2011, 13:08
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Цитата:
Сообщение от GruSha1983
Код:
if Node.AbsoluteIndex=( 1 ) then begin A:= 4.40 ; B:= 1.80 ; end;
if Node.AbsoluteIndex=( 2 ) then begin A:= 6.80 ; B:= 0.40 ; end;
if Node.AbsoluteIndex=( 3 ) then begin A:= 4.70 ; B:= 1.70 ; end;
if Node.AbsoluteIndex=( 4 ) then begin A:= 6.20 ; B:= 0.50 ; end;
if Node.AbsoluteIndex=( 5 ) then begin A:= 7.00 ; B:= 0.40 ; end;
if Node.AbsoluteIndex=( 6 ) then begin A:= 5.90 ; B:= 0.50 ; end;
и так до 836 значения

Как это можно оптимизировать? Выбирается только одна Марка и соответствующая модель...
Можно так:
Код:
select A,B from Table1 where (Marka = :P1) and (Model = :P2)
Ответить с цитированием
  #5  
Старый 21.12.2011, 13:56
GruSha1983 GruSha1983 вне форума
Прохожий
 
Регистрация: 04.08.2011
Сообщения: 7
Репутация: 10
По умолчанию

то есть в Эксессе создать db и прикрутить ее к проге?
Ответить с цитированием
  #6  
Старый 21.12.2011, 15:35
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Создать можно в чем угодно.
Можно сделать свой типизированный файл, можно использовать класс TIniFile, а можно вообще использовать ClientDataSet и загружать данные из XML файла. Удобно, то что обращаться к такому файлу можно как таблице БД, а содержимое в текстовом виде и при некоторой практике без проблем можно изменять данные любым текстовым редактором.
Вариантов как видите много, но конечно не так как вы это сделали.
ПС: Т.е. я предполагаю, что вам нужно соединить данные из вашего текстового файла и данные из вашей программы в единую таблицу.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.

Последний раз редактировалось Страдалецъ, 21.12.2011 в 15:40.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:07.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter