Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.07.2009, 19:19   #1
Shaggrath
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 36
Восклицание переменная в адресе

Помогите пожалуйста с delphi, такая проблема, надо задать адрес в виде переменной, для того что бы через комбо бокс выбирать какой текстовик открыть.
жду коменты по поводу зарание спасибо!!!
Shaggrath вне форума Ответить с цитированием
Старый 16.07.2009, 19:26   #2
Evgeniy26
Форумчанин
 
Аватар для Evgeniy26
 
Регистрация: 29.05.2009
Сообщений: 384
По умолчанию

Подробней можно? Непонятно.
Evgeniy26 вне форума Ответить с цитированием
Старый 16.07.2009, 19:32   #3
Shaggrath
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 36
Печаль

ну типа как в адрес места нахождения файла забить переменную, у меня в принципе есть мысли по этому поводу но не работает, вот код программы может найдешь что не правильно


Код:
var
  Form1: TForm1;
  z,z1,q:string;
  f:textfile;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
begin
GroupBox1.Left:=248;
GroupBox1.top:=72;
GroupBox1.Visible:=true;
ComboBox1.Items.LoadFromFile('save/list.shg');
end;
------------------------------------------------------------Вот загвоздка
procedure TForm1.Button3Click(Sender: TObject);
begin
z:=ComboBox1.Text;
z1:='save/'+z+'25698.sgh';
assignfile(f,'z1');

while not eof (f) do
begin
readln(f,q);
closefile(f);
Label2.Caption:=q;
end;
end;

end.

Последний раз редактировалось Stilet; 20.07.2009 в 09:49.
Shaggrath вне форума Ответить с цитированием
Старый 16.07.2009, 19:35   #4
Mixasik
New Delphi Coder
Форумчанин Подтвердите свой е-майл
 
Аватар для Mixasik
 
Регистрация: 20.07.2008
Сообщений: 874
По умолчанию

Не совсем все ясно, но assignfile(f,'z1'); апострофы ненадо, это переменная, а не строка.
И по ходу - вы закрываете файл в цикле этого делать ненужно.
Страх это слабость и потому, кто испугался уже побежден.
Mixasik вне форума Ответить с цитированием
Старый 16.07.2009, 19:36   #5
Evgeniy26
Форумчанин
 
Аватар для Evgeniy26
 
Регистрация: 29.05.2009
Сообщений: 384
По умолчанию

Про апострофы сказали.
Здесь еще касяк:
Код:
while not eof (f) do
begin
  readln(f,q);
  closefile(f);
  Label2.Caption:=q;
end;

Последний раз редактировалось Evgeniy26; 16.07.2009 в 19:43.
Evgeniy26 вне форума Ответить с цитированием
Старый 16.07.2009, 22:25   #6
Shaggrath
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 36
Восклицание

А что здесь не правильно?

Код:
z1:='save/Shaggrath/25698.sgh';
ComboBox2.Items.LoadFromFile(z1);
только не спрашивай зачем это, просто тяжело объяснить!
за рание спасибо
Shaggrath вне форума Ответить с цитированием
Старый 16.07.2009, 22:38   #7
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

Что сказал компилятор?
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 17.07.2009, 01:33   #8
Shaggrath
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 36
Плохо

матюкался что нет такого адреса как z1, я в недопонимании, вроде должно работать пока не смерея мне так сказали, хотя я мог что то не так понять!!
Shaggrath вне форума Ответить с цитированием
Старый 17.07.2009, 01:43   #9
Evgeniy26
Форумчанин
 
Аватар для Evgeniy26
 
Регистрация: 29.05.2009
Сообщений: 384
По умолчанию

Попробуй так:
Код:
 with TOpenDialog.Create(nil) do
  try
    if Execute then
      ComboBox1.Items.LoadFromFile(FileName);
  finally
    Free;
  end;
или так
Код:
z1 := ExtractFilePath(Application.ExeName) + 'save/Shaggrath/25698.sgh';
ComboBox2.Items.LoadFromFile(z1);
У меня твой код работает.
Покажи путь где файл лежит и *.exe.

Последний раз редактировалось Evgeniy26; 17.07.2009 в 02:13.
Evgeniy26 вне форума Ответить с цитированием
Старый 17.07.2009, 21:05   #10
Shaggrath
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 36
По умолчанию

Выходит что то странное, по пробывал этот же фокус но только на другом проекте, все работает так как надо, я понял всему виной барабашка ибо глупость програмиста который это пишет, короче надо заново создавать проэкт, в любом случае всем спасибо за поддержку!
Shaggrath вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Общая переменная Артэс Общие вопросы C/C++ 4 18.06.2009 16:24
Почему переменная а = 2??? Paul_AG Общие вопросы C/C++ 2 25.05.2009 18:55
Переменная и Memo ben95 Общие вопросы Delphi 2 18.04.2009 12:10
Вопрос об адресе сайта Linel HTML и CSS 7 23.02.2009 19:43