AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Drag&Drop: ShellListView ==> ListBox od. ListView - ListView
Thema durchsuchen
Ansicht
Themen-Optionen

Drag&Drop: ShellListView ==> ListBox od. ListView - ListView

Ein Thema von Matze · begonnen am 27. Jan 2004 · letzter Beitrag vom 28. Jan 2004
Antwort Antwort
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Drag&Drop: ShellListView ==> ListBox od. ListView - L

  Alt 27. Jan 2004, 13:39
Hi!

Wie kann ich per Drag&Drop Dateien in eine ListBox ziehen, sodass der Pfad mit Dateinamen in der ListBox steht?

Ich habe das hier, am Beispiel Panel, gefunden, allerdings weiß ich nicht, was ich in die Lücke schreiben muss.

Delphi-Quellcode:
procedure TMainWindow.panelDragDrop(Sender, Source: TObject; X,
  Y: Integer);
begin
  if (Source is TShellListView) then
  begin
    //Daten auslesen und darstellen
  end;
end;

procedure TMainWindow.panelDragOver(Sender, Source: TObject; X,
  Y: Integer; State: TDragState; var Accept: Boolean);
begin
  Accept := (Source is TShellListView);
end;
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Drag&Drop: ShellListView ==> ListBox

  Alt 27. Jan 2004, 14:50
Moin,

Einfach die einzelnen Source-Teile in das enstsprechende Ereignis der ListBox eintragen (das wären onDragDrop und onDragOver).

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Drag&Drop: ShellListView ==> ListBox

  Alt 27. Jan 2004, 16:37
Danke.

Mein Problem ist dann nur, wie sag ich, dass, wenn ich bei ShellListView anfange zu draggen , dann muss ich doch die Varialbe (Dateinamen) in einen String schreiben.
Wenn ich bei der ListBox droppe , dann soll der String da reingeschrieben werden.

Ich will auch mehrere Dateien auf einmal rüberziehen, nur weiß ich gar nicht, wie ich das anstellen soll (Das rüberziehen mit der Maus kann ich )
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Drag&Drop: ShellListView ==> ListBox

  Alt 27. Jan 2004, 17:20
Caste doch einfach Source nach TShellTreeView und Guck die Variable "Path" (oder so) an (Optional noch mit FileExists() auf Gültigkeit prüfen).
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Drag&Drop: ShellListView ==> ListBox

  Alt 28. Jan 2004, 10:13
Geht bei mir ja überhaupt nicht

Ich hab mir gedacht, in nehm ein eifaches Beispiel, das die markierten Einträge von ListView1 nach ListView2 gibt.
Net mal das kann ich

Delphi-Quellcode:
procedure TForm1.ListView2DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  if Sender = ListView1 then Accept := true
    else Accept := false;
end;

procedure TForm1.ListView2DragDrop(Sender, Source: TObject; X, Y: Integer);
var i: integer;
    Item: TListItem;
begin
  if Source is TListView then
    for i := 0 to ListView1.SelCount do
      if ListView1.Items[i].Selected then
      begin
        Item := ListView2.Items.Add;
        Item.Caption := ListView1.Items[i].Caption;
      end;
end;
Wenn ich nun von ListView2 in diese selber ziehe, dann wir eine neue Spalte mit dem Titel, der gezogen wird, angelegt. Das ist natürlich auch Müll.

Und ich will ja keine Spalten, sondern zeilen.

Kann mir da vielleicht jemand helfen?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz