Bestimmte Typen von Dateien öffnen und nur den Dateinamen laden ?

devStorm

Erfahrenes Mitglied
Hallo !

Ich habe hier ein kleines Problemchen.

Ich entwickle zur zeit ein kleines Tool. In dieses Tool müssen zwei Datei rein geladen werden. Eine TIFF und TXT Datei.

Wie mach ich es das mir nur die Tiff Dateien angezeigt werden aber die TXT Dateien gleichzeitig geladen werden, wenn ich die Tiff Datei lade ? Die Txt Dateien haben den selben Namen wie die Tiff Dateien.

Desweiteren habe ich eine Vorschaufunktion. Die erlaub die Einsicht in die TXT Datei. Wenn ich die TXT Dateien in das rtf Fenster rein laden funzt es wunderbar so wie ich eben haben möchte. Jedoch möchte das es wie folgt funktioniert. Ich sehe lediglich die TIff dateien, wenn ich auf diese klicke, dann werden mit die Infos aus der Textdatei angezeigt, die TIff datei wird jedoch nicht geöffnet. Die tiff datei soll sozusagen eine Atrappe sein. So das die TXT dateien nicht sichtbar sind.

Ich hoffe ihr versteht was ich meine. Bitte helft mir :-(

Andrej
 
Ich hoffe ihr versteht was ich meine.
Nicht so ganz. Zeig doch mal den Code, den Du schon hast und beschreib mal, was daran nicht in Ordnung ist.

Ansonsten: TIFF-Dateien kannst Du (glaub ich) in ein Image-Steuerelement oder eine PictureBox laden, die Textdateien in ein RTF-Feld oder eine TextBox mit MultiLine = True.
Kann allerdings sein, dass komplexere Dateiformate wie TIFF, GIF, usw. nicht von den normalen Steuerelementen unterstützt werden. Dann brauchst Du spezielle DLLs oder OCX-Dateien, mit denen Du entweder die Datei erst in Jpeg oder Bitmap umwandelst und dann anzeigst, oder eben direkt das Bild anzeigst.
 
habs mir fast gedacht :)

So nun nochmal. Habe ein fenster mit zwei feldern. ein feld ist eine listbox, da sollen die tiff dateien angezeigt werden. so wie in einem dateimanager. also nicht das bild selbst angezeigt werden. zu jeder dieser datei gehört noch eine txt datei. die txt datei enthält wichtige infos. diese sollte auch geladen werden. jedoch in der listbox nicht mit angezeigt werden.

wenn ich jedoch die tiff datei anklicke, in der listbox. sollten mir die informationen aus der txt datei im rechten fenstern angezeigt werden. die tiff datei bleibt jedoch geschlossen. so nun habe ich es glaub ich etwas besser erklärt.

und noch was, die tiff dateien sollte in der listbox nur mit dem dateinamen angezeigt werden, der pfad selbst sollte versteckt werden. so das ich in der listbox nur den dateinamen und die extension sehe.

mfg

andrej
 
Zuletzt bearbeitet:
wenn ich jedoch die tiff datei anklicke, in der listbox. sollten mir die informationen aus der txt datei im rechten fenstern angezeigt werden. die tiff datei bleibt jedoch geschlossen. so nun habe ich es glaub ich etwas besser erklärt.
Naja, eigentlich relativ einfach. Du musst einfach nur den Namen der entsprechenden Textdatei ausfindig machen und die Datei mit diesem Namen dann mit Lesezugriff öffnen.
Dann liest Du einfach noch alle Informationen aus der Datei aus und zeigst diese dann irgendwo an. Am einfachsten geht das mit einer Rich TextBox und der zugehörigen Methode "LoadFromFile". Oder Du machst das alles per Hand und trägst die einzelnen Zeilen dann in eine normale TextBox ein - wie ich weiter oben schon sagte.

und noch was, die tiff dateien sollte in der listbox nur mit dem dateinamen angezeigt werden, der pfad selbst sollte versteckt werden. so das ich in der listbox nur den dateinamen und die extension sehe.
Dateien von bestimmtem Typ in einer ListBox aufzulisten ist seit VB6 ziemlich einfach geworden, denn seitdem gibt es die FileSystemObjects - mit denen kann man das machen. Das wurde hier aber auch schon mehrmals gepostet, einfach mal suchen.
Dann nimmst Du Dir einfach noch mal die Split-Funktion, und schneidest damit aus dem vollständigen Dateinamen alles vor dem letzten Backslash ab - dann hast Du nur den Dateinamen.
Zum Öffnen der Textdatei musst Du dann nur noch von dem angeklickten Dateinamen die Endung (die letzten 4 Zeichen - "tiff") abschneiden und stattdessen noch "txt" anhängen.

Alles verstanden?
 
hi danke für die ausfühliche erklärung. kannst du mir aber auch etwas an quellcode geben. den ich bin gerade dabei vb zulernen und kenne noch nicht all die befehle. das währe super.

danke

andrej
 
danke, habe es mit viel mühe bereits selbst gelöst. hier auschnitt aus meinem quellcode

Code:
Set oFolder = fso.GetFolder(fenst_Verzeichnise.Path) ' Ausgangsverzeichnis
For Each oFile In oFolder.Files ' alle Dateien durchlaufen
  If LCase$(fso.GetExtensionName(oFile)) = "tif" Then ' nur .tiff Dateien laden!
      frm_Main.list_Datei.AddItem oFile.Name 'oFile.ParentFolder & "\" &
  End If
Next

andrej
 
Zurück