tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
503
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Zeller
    Zeller Zeller ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    26
    Hallöchen

    Ich suche eine Möglichkeit, um durch Doppelklick Dateien Aus einer ListBox zu öffnen.
    Dazu benötige ich ja den gesammten Pfad der Datei in meiner ListBox.
    Ich möchte aber, dass nur der Dateiname selbst angezeigt wird.
    Kann man den Pfad irgendwie unsichtbar anhängen oder so?

    Schon jetzt vielen Dank für eure Unterstützung!
     

  2. #2
    Avatar von Endurion
    Endurion Endurion ist offline Mitglied Diamant
    Registriert seit
    Apr 2004
    Beiträge
    2.151
    Es gibt bei praktisch allen Controls ein ItemData. Das ist ein Wert, der gerade gross genug ist, einen Pointer zu fassen. Damit könntest du bei jedem Item einen Pointer auf ein Struct oder String oder wasauchimmer setzen, und da drin deinen kompletten Pfad packen.

    Alternativ kannst du ja eine std::map<std::string,std::string> benutzen, wo vorne der Dateiname und hinten der komplette Pfad reinkommt. Da könntest du dann den kompletten Pfad anhand des selektierten Items raussuchen.
     

  3. #3
    Avatar von Zeller
    Zeller Zeller ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    26
    Ja äähm?

    Tönt gut, doch ich schnall das noch nicht ganz. Bin vorallem an der Alternativ Variante interessiert.
    Wie funktioniert das genau?
     

  4. #4
    Avatar von Endurion
    Endurion Endurion ist offline Mitglied Diamant
    Registriert seit
    Apr 2004
    Beiträge
    2.151
    Du definierst dir eine std::map<std::string,std::string>.
    Benötigt die STL header <string> und <map> und einen nicht komplett verblödeten Compiler.

    Vorne packst du deinen Filenamen ohne Pfad rein, hinten deinen kompletten Pfad.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    std::map<std::string,std::string>    mapWurzel;
     
    // Einsetzen
    mapWurzel["MeinSpiel.exe"] = "c:\\programme\\hier\\dort\\MeinSpiel.exe";
     
    // suchen
    std::string    strSelektiertesItem = "MeinSpiel.exe";
     
    std::map<std::string,std::string>::iterator  it( mapWurzel.find( strSelektiertesItem ) );
    if ( it != mapWurzel.end() )
    {
      // den Eintrag gibt es
      std::string   strMeinPfad = it->second;
     
      // jetzt mit strMeinPfad die Welt erobern
    }
     

  5. #5
    Avatar von Zeller
    Zeller Zeller ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    26
    Danke schön!!

    Ich konnt mein Problem Mittels subitems der listbox lösen.

    Bekomme nun jedoch den Index des gedblklickten Items nich raus.

    Kannst du mir da helfen?
     

  6. #6
    Avatar von Zeller
    Zeller Zeller ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    26
    Vielen Dank für deine Hilfe ich hab es hin gekriegt!
     

Ähnliche Themen

  1. Dateinamen im Textfeld anzeigen
    Von xFlipx im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 2
    Letzter Beitrag: 07.04.09, 16:38
  2. Hintergrund des selektierten Items der ListBox definieren
    Von warcraft9105 im Forum .NET Windows Forms
    Antworten: 3
    Letzter Beitrag: 18.04.08, 22:39
  3. In Listbox markierten Pfad öffnen
    Von BLADEooz im Forum Visual Basic 6.0
    Antworten: 7
    Letzter Beitrag: 29.09.05, 13:24
  4. Antworten: 2
    Letzter Beitrag: 14.04.05, 07:49
  5. Dateinamen nicht in der URL anzeigen
    Von colblake im Forum ASP
    Antworten: 4
    Letzter Beitrag: 26.10.04, 16:07