Entwickler-Ecke
Basistechnologien - Titelleiste im Formular ändern
Ritzeratze - Mo 24.02.14 10:00
Titel: Titelleiste im Formular ändern
Moin,
Ich möchte in der Titelleiste eines Formularfensters den vollständigen Pfad einer Datei angeben.
Den Dateinamen extrahiere ich aus einem Öffnen Dialog.
Das Ergebnis sieht dann so aus:
System.IO.Path.GetFullPath(openFileDialog1.FileName);
Wenn ich mehrere Dateien aus einen Dialog auswähle, und diese in einer listbox ablege und als Bilderschau starte,
dann möchte ich in der Titelleiste neben dem Pfad un den Dateinamen auch noch die aktuelle Anzahl der Bilder angezeigt bekommen.
Bsp: c:\Verz\Dateiname Bild 1 von x
Gibt es dafür auch eine Funktion oder muss ich da selber was basteln?
Gruss Ritze
Moderiert von
Th69: Titel geändert (Tittel -> Titel ;-).
Moderiert von
Th69: C#-Tags hinzugefügt
Christian S. - Mo 24.02.14 10:09
Für was genau suchst Du jetzt eine Funktion? :gruebel:
Ritzeratze - Mo 24.02.14 10:39
Hallo Christian,
wie bekomme ich die Anzeige Bild 1 von x hin.
Christian S. - Mo 24.02.14 10:47
Bin mir nicht sicher, ob Du wirklich das hier meinst:
Ritzeratze - Mo 24.02.14 12:45
Ja, nur muss das automatisch passieren. Die Dateien die ich für eine Vorschauanzeige über den Dialog auswähle,
werden in eine listbox abgelegt. (das kann eine oder auch mehrere sein). Über eine Timerfunktion wird dann jedes Bild
im vorgegebenen Interval angezeigt. Dabei soll neben Pfad und Name der Datei auch Bild 1 von x angezeigt werden.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| private void openFileDialog2_FileOk(object sender, CancelEventArgs e) { string[] dateien = openFileDialog2.FileNames;
if (listBoxfileName.Items.Count != 0) { listBoxfileName.Items.Clear(); } foreach (string datei in dateien) listBoxfileName.Items.Add(datei); } |
Moderiert von
Th69: Code- durch C#-Tags ersetzt
Th69 - Mo 24.02.14 12:56
Hallo,
dann mach das doch :gruebel:
Du mußt einfach nur in der Timer-Methode den Titeltext ändern...
Ritzeratze - Mo 24.02.14 16:57
Jo, das funktioniert auch alles. Hänge nur fest wie ich die Anzahl der Listboxeinträge in die Titelzeile bekomme.
Gruss Ritze
Ralf Jansen - Mo 24.02.14 17:02
C#-Quelltext
1:
| this.Text = string.Format("1 von {0}", dateien.Length); |
Ritzeratze - Di 25.02.14 14:15
Moin,
OK, das funktioniert soweit das mir die Gesamtanzahl der Dateien angezeigt werden.
Jedes Bild soll für eine bestimmte Zeitdauer angezeigt werden. Dabei soll in der
Fenstertiteleiste z.B. bei 2 Bilder folgendes angezeigt werden.
Bild1: Bild 1 von 2 c:\Verz\Name
Bild2: Bild 2 von 2 c:\Verz\Name
Über SelectedIndex der Listbox funktioniert das nicht.
Gruss Ritze
Christian S. - Di 25.02.14 14:25
Irgendeinen Index wirst Du ja aber haben, sonst könntest du die Bilder ja nicht anzeigen. Den schreibst Du dann halt in den String.
Ritzeratze - Di 25.02.14 17:59
Hm,
dabei kommt schon ein wenig verwerrtbares raus allerdings nicht so in der Form wie erhofft.
C#-Quelltext
1:
| Vorschau.Text = "Vorschau" + " - " + "Bild " + "von " + listBoxfileName.Items.Count + listBoxfileName.SelectedIndex + listBoxfileName.SelectedItem.ToString(); |
Geht es auch anders ?
Gruss Ritze
Moderiert von
Christian S.: C#-Tags hinzugefügt
Christian S. - Di 25.02.14 18:01
Es geht am Besten so, wie Ralf es Dir gezeigt hat ...
Ritzeratze - Di 25.02.14 18:19
Nein ,das funktioniert leider nicht.
Hier wird nur die gas erste Element angezeigt.
Ich brenötige aber alle
Th69 - Di 25.02.14 19:18
C#-Quelltext
1:
| "Reihenfolge" + "wichtig" + "Die" + "ist" + "!" |
Ritzeratze - Di 25.02.14 19:46
Danke Christian,
das ist schon klar. Im dem Kontzext funktioniert das aber nicht was Ralf gezeigt hat.
Ich darf hier nur mit den Elementen der listbox agieren.
Ich habe es ja hinbekommen. allerdings wird das erste Bild immer als Nulltes Element angegeben, was ja auch richtig ist.
Meine Frage beruhte darauf, wie ich das nullte Element in der Ausgabe als erste angeben kann.
Gruss Ritze
Christian S. - Di 25.02.14 20:03
So, mal was grundsätzliches:
Ritzeratze hat folgendes geschrieben : |
dabei kommt schon ein wenig verwerrtbares raus allerdings nicht so in der Form wie erhofft.
[...]
Geht es auch anders ? |
Ritzeratze hat folgendes geschrieben : |
Hier wird nur die gas erste Element angezeigt.
Ich brenötige aber alle |
Ritzeratze hat folgendes geschrieben : |
Ich habe es ja hinbekommen. allerdings wird das erste Bild immer als Nulltes Element angegeben, was ja auch richtig ist.
Meine Frage beruhte darauf, wie ich das nullte Element in der Ausgabe als erste angeben kann. |
Wie sollen wir denn bitte aus den ersten beiden Zitaten raten, dass das im dritten Zitat gemeint ist? Wenn Du Deine Fragen nicht so formulierst, dass man sie überhaupt beantworten *kann*, dann hat irgendwann auch niemand mehr Lust dazu!
Nun zu Deiner Frage: Du kannst doch einfach statt dem Index, Index+1 in den String schreiben. Um es so zu machen, wie Ralph es Dir gezeigt hat:
C#-Quelltext
1:
| string.Format("{0} plus 1 ist {1}", eineZahl, eineZahl+1); |
Ritzeratze - Di 25.02.14 20:23
Danke, für Eure Antworten,
habe mir anders geholfen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!