Einzelnen Beitrag anzeigen

Johnny Bravo

Registriert seit: 7. Jun 2008
75 Beiträge
 
#22

Re: Probleme mit Listbox Einträgen

  Alt 20. Jun 2008, 21:31
Hi,
hab die fehler beseitigt und den richtigen code hier:
Irgendwie komm ich heute auf keinen grünen zweig. Lauter Fehler die man eigentlich sofort sehen sollte..


das ist der befehl, die Datei aus dem array zu starten - es passiert jedoch nichts, keine fehlermeldung, rein gar nichts.
Delphi-Quellcode:
begin
  if Err = 0 then
      ShellExecute (Form2.Handle,
      'open',
      Pchar('MeinArray[lIndex].RealFileName'),
      NIL,
      NIL,
      SW_SHOWNORMAL);

das ist die prozedur die datei aus dem Opendialog in die Listbox zu ladenüberarbeitet)

Delphi-Quellcode:
procedure TForm4.Button1Click(Sender: TObject);
    var IconIndex : Integer;
    h : hIcon;
    S : String;
    Icon : TIcon;
    Bitmap : TBitmap;
    OpenDialog : TOpenDialog;
    lIndex: Integer;


    begin
         lIndex := Length(MeinArray);
         SetLength(MeinArray, lIndex + 1);
         MeinArray[lIndex].RealFileName := Form2.OpenDialog1.FileName;
         MeinArray[lIndex].DisplayName := Form4.Edit1.Text;
         Form2.ListBox1.Items.Add(MeinArray[lIndex].DisplayName);
         Form2.ListBox1.MultiSelect :=False;
         Form2.ListBox1.Sorted :=True;
         Form2.Label2.Caption := OpenDialog.FileName;
         Icon := TIcon.Create;
         IconIndex := 0;
         S := OpenDialog.FileName;
         h := IconFromFile(OpenDialog.FileName,0);
         Form2.ImageList1.AddIcon (Icon);

       try
          Form2.ImageList1.GetIcon(0, Icon);
          Form2.Image1.Canvas.Draw(0, 0, Icon);

      with
          Form2.Image1.Canvas Do
          DrawIconEx(Handle, 0, 0,h, 32, 32, 0, Brush.Handle, di_Normal);

      begin
          Form4.Close;
          Edit1.Clear;

          end;

        finally
          FreeAndNil(Icon);
     end;
   end;
wie gesagt,sobald ein eintrag in der Listbox drin ist, und gestartet werden soll, passiert nichts, aber auch rein gar nichts.

EDIT: Habs schon mit Application.Handle und SW_NORMAL versucht, ohne erfolg.
  Mit Zitat antworten Zitat