![]() |
Re: Probleme mit Listbox Einträgen
Hi,
hab mir nochmals den Code angeguckt. Ich rede jetzt von der Main.pas. Bisschen gekürzt sieht es so aus:
Delphi-Quellcode:
Das Problem ist hier einfach, dass lIndex nichts zugewiesen wurde. Dem musst Du etwas zuweisen. Höchstwahrscheinlich den ItemIndex der ListBox1.
procedure TForm2.Button2Click(Sender: TObject);
var lIndex: Integer; begin Err := ShellExecute(Form2.Handle, 'open', Pchar(MeinArray[lIndex].RealFileName), NIL, NIL, SW_SHOWNORMAL); end; [edit] Ich sehe sogar noch mehr! Du hast einmal in der Name.pas ein MeinArray definiert und einmal in der Main.pas ein MeinArray definiert. Du befüllst nur das in der Name.pas. Das das nicht in der Main.pas funktioniert, ist ja nun klar :zwinker: [/edit] @Detlef: Fang mal Deinen Vogel wieder ein :tongue: |
Re: Probleme mit Listbox Einträgen
*Aaaaaarrrrgghh*
Zitat:
|
Re: Probleme mit Listbox Einträgen
lIndex ist doch initialisiert mit [/delphi]:= ListBox1.ItemIndex;[delphi]
aber wie soll ich denn dann den Eintrag von der Name.pas in die Main.pas bekommen? Das Edit wo der Alternativnamen geschrieben wird, sitzt auf der Name.pas. Die Listbox, in der dieser Name hineinkommt, sitzt auf der Main.pas. ich dachte, es wäre ein array, was sich beide units teilen. wie lautet dann der korrekt Pchar bei Shellexecute? Wie gesagt, ich benutze ein Array zum erstenmal. |
Re: Probleme mit Listbox Einträgen
Zitat:
Einfach bei beiden definieren is' nich' :stupid: Du könntest in der Name.pas alles was dieses Array betrifft rauslöschen (nur die Definition!!!) und im Code dann (testweise, da unsaubere Lösung!) anstatt MeinArray Form2.MeinArray schreiben. Und den lIndex in der Main.pas:
Delphi-Quellcode:
lIndex := ListBox1.ItemIndex
|
Re: Probleme mit Listbox Einträgen
Ich brauch jetzt ne Pennpause. Cobra (Manuel), übernehmen Sie :lol:
|
Re: Probleme mit Listbox Einträgen
Bin schon fleißig dabei, Chef :mrgreen:
|
Re: Probleme mit Listbox Einträgen
ich merke gerade das ich nicht mehr weit komme ich bin zu müde. ich mach in ein paar stunden weiter, trotzdem danke. :zwinker:
|
Re: Probleme mit Listbox Einträgen
Das Problem ist ganz einfach: Wenn Du in beiden Units jeweils eine Variable vom Typ TDeinArray definierst, sind das auch 2 verschiedene Variablen. Wenn mein Nachbar und ich das gleiche Auto haben, kann er seins so oft waschen, wie er will, davon wird meins nicht sauberer :zwinker:
|
Re: Probleme mit Listbox Einträgen
Leider, Detlef, leider :mrgreen:
|
Re: Probleme mit Listbox Einträgen
Ok, ich hab jetzt eine Unit names "FileArray" erstellt,in der sich MeinArray befinden soll, worauf die Units Main und Name zugreifen sollen.
Unit Name soll schließlich die Daten ins Array schicken. in der FileArray befindet sich bis jetzt folgendes: Hab in beiden Formularen Main und Name in der Uses Klausel FileArray eingetragen.[delphi] [pre]unit FileArray; interface var lIndex : Integer; implementation type TFilenameInfos = record RealFileName: String; DisplayName: String; private MeinArray: Array of TFilenameInfos; // TFilenameInfos wurde nicht vollständig definiert, Fehlermeldung Nr.1, "Das Private Symbol "Mein Array wurde deklariert, aber nie verwendet" end; end. [/pre] [pre] procedure TForm4.Button1Click(Sender: TObject); var IconIndex : Integer; h : hIcon; S : String; Icon : TIcon; begin if (Edit1.Text = '') then begin ShowMessage('Bitte geben sie einen Namen ein.'); exit; end else if Form2.ListBox1.ItemIndex >= 0 then begin MeinArray.lIndex := Length(MeinArray); SetLength(FileArray.FileArray, lIndex + 1); MeinArray[lIndex].RealFileName := Form2.OpenDialog1.FileName; MeinArray.MeinArray[lIndex].DisplayName := Form4.Edit1.Text; Form2.ListBox1.Items.Add(MeinArray[lIndex].DisplayName); Form2.Listbox1.Update; end; [/pre] wenn ich oben überall ein FileArray vor das MeinArray setzte, bekomme ich eine fehlermeldung "Nicht deklarierter bezeichner MeinArray und lIndex" Aber lIndex ist doch als globale Variable in Unit FileArray gesetzt oder nicht? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz