Announcement

Collapse
No announcement yet.

DropFile funktioniert nicht bei borderstyle = bsNone...

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

  • DropFile funktioniert nicht bei borderstyle = bsNone...

    Hallo,

    ich benutze diesen Code, um Dateinamen per Drag&Drop einzulesen:

    <pre>
    {************************************************* ****************************}
    procedure TForm1.WMDROPFILES(var Msg: TMessage);
    var
    iCnt : Integer;
    Count : Integer;
    Size : Integer;
    Filename : PChar;
    begin
    inherited;
    Count := DragQueryFile(Msg.wParam,$FFFFFFFF,Filename,255);
    For iCnt := 0 to Count -1 do
    begin
    Size := DragQueryFile(Msg.wParam,iCnt,Nil,0) +1;
    Filename := StrAlloc(Size);
    DragQueryFile(Msg.wParam,iCnt,Filename,Size);
    memo1.lines.add(filename);
    StrDispose(Filename);
    end;
    DragFinish(Msg.wParam);
    end;
    {************************************************* ****************************}
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    DragAcceptFiles(self.Handle,True);
    end;
    {************************************************* ****************************}
    </pre>

    Interessant: Wenn ich nun borderstyle des Formulares auf bsNone setze, funktioniert das nicht mehr (auch der Cursor zeigt ein Stopzeichen), auch nach dem Zurücksetzen auf bsSizeable geht nichts mehr.

    Das Problem tritt nur nach dem "Umschalten" auf, wenn das Programm mit borderstyle = bsNone gestartet wird, geht alles.

    Wie kann ich das ändern? Hängt es vielleicht mit dem Handle des Formulares zusammen, das sich ändert?

    Danke im Voraus.

    Felix

  • #2
    Hat sich erledigt. Offenbar ändert sich das Handle des Fensters, wenn borderstyle verändert wird.

    Daher muss man DragAcceptFiles noch einmal aufrufen.

    Gruß Feli

    Comment


    • #3
      Das ist korrekt, der Fensterstil ändert sich. Du solltest .CreateWnd; überschreiben und dort DragAcceptFiles() aufrufen.

      Gruß Hage

      Comment


      • #4
        Danke Hagen.

        Gruß Feli

        Comment

        Working...
        X