Autor Beitrag
patrick dee
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: Do 02.01.03 11:53 
hallo reader,

Problem:

habe eine ListBox mit div einträgen. Wenn ich nun auf einen klicke soll eine Datei erzeugt werden die IMMER Naps.cc1 heissen soll. in dieser soll dann immer der eintrag aus der listbox stehen. hast du ein beispiel für mich wie so etwas geht ?????

danke
patrick

_________________
Glauben heißt nichts wissen ...
Jack Falworth
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222

Win XP Pro, Slackware 10.0
D5 Enterprise, C++, ABAP
BeitragVerfasst: Do 02.01.03 12:53 
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure Speichern;
var datei: Textfile;
begin
assignfile (datei, NapsCC1);
 try
   rewrite (datei); 
   writeln (datei, Listbox1.ItemIndex);
 finally
  closefile (datei);
 end;
end;


Ich habs nicht geprüft, sollte aber funktionieren. Das ist eine einfache Variante mit einer Textfile.

MfG

Jack Falworth

_________________
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 02.01.03 15:54 
Jack Falworth hat folgendes geschrieben:
Ich habs nicht geprüft, sollte aber funktionieren.
ausblenden Quelltext
1:
2:
...
   writeln (datei, Listbox1.ItemIndex);

Kleine Korrektur: mit der Zeile speicherst du die Index-Nr. des ausgewählten Eintrags in der Datei, aber nicht den String, der dadurch repräsentiert wird. Richtig wäre IMHO
ausblenden Quelltext
1:
   writeln (datei, Listbox1.Items[Listbox1.ItemIndex]);					

Außerdem würde ich vor dem Speichern prüfen, ob überhaupt ein Eintrag gewählt wurde. Wenn nicht, ist der ItemIndex -1!
S - tefano
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 28



BeitragVerfasst: Do 02.01.03 16:04 
Hi,

Wenn er die Speichern-Prozedur innerhalb des OnClickEvents aufruft, muss er das nicht machen. Dann hat er nämlich auf jeden Fall einen "gültigen" ItemIndex (der Event wird ja nur ausgelöst, wenn man auf ein Item klickt).

Bis denn,

S - tefano

_________________
Es gibt Tage, an denen verliert man, und es gibt Tage, an denen gewinnen die anderen.
Walk on
Jack Falworth
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222

Win XP Pro, Slackware 10.0
D5 Enterprise, C++, ABAP
BeitragVerfasst: Do 02.01.03 17:32 
Mein Fehler, war in Eile. :roll:

MfG

Jack Falworth

_________________
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 02.01.03 18:17 
S - tefano hat folgendes geschrieben:
Wenn er die Speichern-Prozedur innerhalb des OnClickEvents aufruft, muss er das nicht machen. Dann hat er nämlich auf jeden Fall einen "gültigen" ItemIndex (der Event wird ja nur ausgelöst, wenn man auf ein Item klickt).

Richtig! Aber ich hab´s mir mittlerweile angewöhnt, auf Nummer Sicher zu gehen und lieber eine Prüfung zuviel einzubauen. :) Aber recht hast du trotzdem!

Jack Falworth hat folgendes geschrieben:
Mein Fehler, war in Eile.

Null Problemo. Passiert schon mal ...
S - tefano
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 28



BeitragVerfasst: Do 02.01.03 18:53 
Am besten gratulieren wir uns einfach zu unserer "Tolligkeit" und das wars dann. 8)

_________________
Es gibt Tage, an denen verliert man, und es gibt Tage, an denen gewinnen die anderen.
Walk on
patrick dee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: Fr 03.01.03 17:14 
hi leute

danke für die vielen antworten. aber wie muß ich das ganze bei mir einbauen ??? in der listbox1 dblclick ???

den ich muß ja noch sagen wohin er die datei legen soll. dies will ich mit edit2.text machen. also wie geht das mit dblclick das in den order zu legen desen pfad ich in edit 2 habe
arbeite mit delphi 6

danke

gruß

patti

_________________
Glauben heißt nichts wissen ...
Jack Falworth
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222

Win XP Pro, Slackware 10.0
D5 Enterprise, C++, ABAP
BeitragVerfasst: Fr 03.01.03 19:15 
jep baust das in das Doppelclick Ereignis der Listbox ein.
Für den Dateinamen musst du nur die Procedure etwas erweitern.

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
procedure Speichern; 
var datei: Textfile; 
begin 
datei:= Edit2.Text;
 try
  assignfile (datei, NapsCC1); 
  try 
    rewrite (datei); 
    writeln (datei, Listbox1.Items[Listbox1.ItemIndex]); 
  finally 
   closefile (datei); 
  end; 
 except 
  Showmessage ('Ungueltiger Dateiname!');
 end;
end;


Müsste eigentlich funktionieren,

MfG

Jack Falworth

_________________
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.
patrick dee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: Sa 04.01.03 14:10 
hi,

ok habe es so gemacht bekomme aber noch die Fehler:
Zitat:
undefinierter bezeichner NapsCC1.
'.' erwartet aber ';' gefunden.
Ungenügend Forward oder External deklaration TForm1.Speichern.

so habe ich es
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
public
    { Public-Deklarationen }
    procedure Speichern;

 

procedure TForm1.ListBox1DblClick(Sender: TObject);
var datei: Textfile; 
begin
datei:= Edit2.Text;
try 
  assignfile (datei, rc1);
  try 
    rewrite (datei); 
    writeln (datei, Listbox1.Items[Listbox1.ItemIndex]); 
  finally 
   closefile (datei); 
  end; 
except 
  Showmessage ('Ungueltiger Dateiname!'); 
end; 
end; 

end;

gruß

patti

(04.01. 23:25 Tino) Code-Tag hinzugefügt.

_________________
Glauben heißt nichts wissen ...
Jack Falworth
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222

Win XP Pro, Slackware 10.0
D5 Enterprise, C++, ABAP
BeitragVerfasst: Sa 04.01.03 15:02 
ups sorry mein fehler, kann ja so nicht klappen.

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
procedure Speichern; 
var datei: Textfile; dateiname: string;
begin 
dateiname:= Edit2.Text; 
try 
  assignfile (datei, dateiname); 
  try 
    rewrite (datei); 
    writeln (datei, Listbox1.Items[Listbox1.ItemIndex]); 
  finally 
   closefile (datei); 
  end; 
except 
  Showmessage ('Ungueltiger Dateiname!'); 
end; 
end;


jetzt nur noch in das Edit Naps.cc1 oder sonstwas eintragen, dann sollte es klappen.

_________________
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.
patrick dee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: Sa 04.01.03 15:34 
hi

programm startet aber nix passiert wollte eigendlich in edit 2 den pfad eingeben wo das ganze abgelegt wird zb F:\Eintrag\
wenn ich jetzt klicke passiert nix auch mit der suchfunktion finde ich im computer nix

gruß

patti

_________________
Glauben heißt nichts wissen ...
Jack Falworth
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 222

Win XP Pro, Slackware 10.0
D5 Enterprise, C++, ABAP
BeitragVerfasst: Sa 04.01.03 17:29 
Ich hab das bei mir jetzt ausprobiert und es funktioniert!!

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
procedure Speichern;
var datei: Textfile; dateiname: string;
begin
dateiname:= Form1.Edit1.Text;
try
  assignfile (datei, dateiname);
  try
    rewrite (datei);
    writeln (datei, Form1.Listbox1.Items[Form1.Listbox1.ItemIndex]);
  finally
   closefile (datei);
  end;
except
  Showmessage ('Ungueltiger Dateiname!');
end;
end;

procedure TForm1.ListBox1DblClick(Sender: TObject);
begin
Speichern;
end;


und als Pfad nimmst du z.b. " ./hallo.cc1 " dann wird die Datei in das aktuelle Verzeichnis gespeichert. Du kannst aber auch jedes x-beliebige Verzeichist benutzen.
Wenn du nur das Verzeichnis reinschreiben willst, dann musst du halt noch eine Procedure schreiben, die an den pfad den dateinamen anhängt.

MfG

Jack Falworth

_________________
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.
patrick dee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: So 05.01.03 07:14 
danke jack

jetzt geht es auch bei mir

gruß
patti :lol:

_________________
Glauben heißt nichts wissen ...