Announcement

Collapse
No announcement yet.

PopupMenü Hilfe

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    ChangeFileExt()

    Comment


    • #17
      Und woher, David, weißt du dann, was beim Anklicken passieren soll? Siehe deine Bedingung ganz am Anfang: <i>Natürlich soll es auch so sein das wenn ich auf die jeweilige Datei klicke (*.exe) das, das Programm ausgeführt wird.</i><br><br>
      ??? |<br><br>
      Ansonsten: Hagens Vorschlag ist in Zeile 25 umzusetzen. )<br><br>
      Mathias

      Comment


      • #18
        Das Programm läuft soweit, doch ich bekomme es einfach nicht hin mit dem ChangeFileExt(); kann mir jemand die genau Syntax nennen. Das mit dem Datei öffnen, denke ich kann man über ShellExecute [ShellExecute(Application.Handle,'open',PChar('Date iname.exe'),PChar('Parameter'),PChar('Verzeichniss '),sw_ShowNormal);] wie, noch keine Ahnung. Bin für Tips und Quellcode Dankbar.

        Ciau
        David Wenzlo

        Comment


        • #19
          Super, das funktioniert perfekt. Meinst du es wäre noch irgendwie möglich das ganze nach Typen (1.Ordner, 2.Files) zu sortieren. Und die Programmicons darzustellen.

          Ciau
          David Wenzlo

          Comment


          • #20
            Ja. ) Äh ... soll ich das jetzt auch noch machen? ;o)<br>
            Mathias

            Comment


            • #21
              NE, Aber kannst du mir vielleicht ein paar Tips geben wo ich suchen soll und wie ich daran gehen soll.

              Ciau
              David Wenzlo

              Comment


              • #22
                )<br><br>
                Wg. der Icons gucke mal hier
                http://entwickler-forum.de/webx?50@@.ee8751f
                . Da steckt ein kurzes Codebeispiel drin, wie man ein Programmicon in einem Menü anzeigt. Der Nachteil wäre in dem Moment, dass es in Originalgröße angezeigt wird. Aber dafür gibt´s bestimmt auch ´ne Lösung. Ich muss allerdings gestehen, dass ich die nicht kenne. |<br><br>
                Wg. der Anordnung im Menü (sprich: erst die Ordner, dann alle Dateien) würde <u>ich</u> mir so behelfen, dass ich die "FindFirst/FindNext/FindClose"-Funktion im Codebeispiel quasi auftrenne. Auch wenn´s dadurch umständlicher wird. Ich würde also beim ersten Mal nur nach Verzeichnissen suchen, und dann (quasi in der Kopie) erst die Dateien einlesen:
                <PRE>
                Res := FindFirst('*.*',faAnyFile,ds);
                while(Res = 0) do
                begin
                if(ds.Attr and faDirectory > 0) and ((ds.Name <> '.') and (ds.Name <> '..')) then
                begin
                mii := TMenuItem.Create(parentmi);
                mii.Caption := ds.Name;
                parentmi.Add(mii);
                ChDir(ds.Name); Dir(orgPfad,mii);
                end;
                Res := FindNext(ds);
                end;
                FindClose(ds);
                </PRE>
                <PRE>
                Res := FindFirst('*.*',faAnyFile,ds);
                while(Res = 0) do
                begin
                if((ds.Name <> '.') and (ds.Name <> '..')) and (ds.Attr and faDirectory <= 0) then
                begin
                mii := TMenuItem.Create(parentmi);
                mii.Caption := ChangeFileExt(ds.Name,);
                mii.Hint := pfad <font color=#ff0000>+ '\'</font> + ds.Name;
                mii.OnClick := OnMIClick;
                parentmi.Add(mii);
                end;
                Res := FindNext(ds);
                end;
                FindClose(ds);
                </PRE>
                Wie gesagt, das ist zwar umständlicher, funktioniert aber trotzdem. Wenn einer ´ne Idee zur Vereinfachung hat, dann immer her damit. Nicht nur David wird´s euch danken. )

                PS, David: Das rot markierte war bei mir noch nötig, weil "GetCurrentDir" den Pfad ohne abschließenden Backslash zurückgibt. Beim Zusammensetzen von Pfad und Dateiname fehlt der dann natürlich, wodurch der Start via ShellExecute höchst unwahrscheinlich wird. )

                Gruß,
                Mathias

                Comment


                • #23
                  <b>SHGetFileInfo()</b> + TImageLis

                  Comment

                  Working...
                  X