AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Drag&Drop Listbox ---> Groupbox (---> Label)
Thema durchsuchen
Ansicht
Themen-Optionen

Drag&Drop Listbox ---> Groupbox (---> Label)

Ein Thema von Kranich · begonnen am 5. Okt 2006 · letzter Beitrag vom 6. Okt 2006
Thema geschlossen
Kranich

Registriert seit: 25. Aug 2006
Ort: Essen
11 Beiträge
 
Delphi 7 Personal
 
#1

Drag&Drop Listbox ---> Groupbox (---> Label)

  Alt 5. Okt 2006, 21:57
Hallo,

ich habe eine Frage zu dem im Titel genannten Vorhaben.

Genau meine ich das so:

Ich habe eine Playlist 1 und Playlist2, Playlist2 ist visible=false.
In Playlist1 steht der Titel einer Mp3 Datei, in der Playlist2 steht an gleicher Position der Pfad der Datei.
Nun habe ich eine Groupbox in der ein label namens filea ist, ich möchte nun einen Titel in der Playlist 1 anklicken per draganddrop auf die Groupbox ziehen und dann wird in dem label filea der Pfad des entsprechenden Titels auf Playlist2 geschrieben.

Ich hab nun schon einige Zeit nach Drag&Drop gesucht und sicherlich auch einiges gefunden, etwa Bilder in Imageboxen ziehen, etc. pp., jedoch kann ich für mein Problem keine Lösung finden.

Ich wäre euch wirklich total dankbar um Hilfe.

Liebe Grüße,
Kranich
Kai Lamers
 
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.106 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Drag&Drop Listbox ---> Groupbox (---> Label)

  Alt 5. Okt 2006, 22:23
Moin Kranich,

bei der Listbox mit den Namen setze mal die Eigenschaft DragMode auf dmAutomatic, ausserdem noch die Eigenschaft Tag auf einen Wert, um die ListBox identifizieren zu können (z.B. 1).
Bei der GroupBox dann noch die Eigenschaft DragMode auch auf dmAutomatic.
Die Events OnDragOver und OnDragDrop der GroupBox könnten dann so aussehen:

Delphi-Quellcode:
procedure TForm1.gbDestDragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);

var
  lb : TListBox;

begin
  if Source is TListBox then begin
    lb := Source as TListBox;
    // Drop erlauben, wenn die Quelle die richtige ListBox ist
    // und ein Eintrag ausgewählt wurde
    Accept := (lb.Tag = 1) and (lb.ItemIndex > -1);
  end;
end;

procedure TForm1.gbDestDragDrop(Sender, Source: TObject; X, Y: Integer);

var
  lb : TListBox;

begin
  if Source is TListBox then begin
    lb := Source as TListBox;
    if lb.Tag = 1 then begin // Quelle war die richtige ListBox
      // dann korrespondierenden Eintrag der anderen in das Label schreiben
      lblPath.Caption := lbPath.Items[lb.ItemIndex];
    end;
  end;
end;
Das Beispiel geht davon aus, dass die Einträge der Namen und die der Pfade immer den gleichen Index haben.

[EDIT]
Code vervollständigt (gemäss Kranichs Posting)
[/EDIT]
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
 
Kranich

Registriert seit: 25. Aug 2006
Ort: Essen
11 Beiträge
 
Delphi 7 Personal
 
#3

Re: Drag&Drop Listbox ---> Groupbox (---> Label)

  Alt 5. Okt 2006, 22:32
Hey,

vielen vielen lieben Dank, hat wunderbar funktioniert

Liebe Grüße,
Kranich

PS: Der Vollständigkeit halber, damit auch andere den Code Schnipsel nutzen können: In der einen Prozedur fehlt die Deklaration von lb.
Kai Lamers
 
Kranich

Registriert seit: 25. Aug 2006
Ort: Essen
11 Beiträge
 
Delphi 7 Personal
 
#4

Re: Drag&Drop Listbox ---> Groupbox (---> Label)

  Alt 5. Okt 2006, 22:46
Hey, kaum hat sich das eine gelöst, kommt ein anderes Problem auf.

Ich habe Hotkeys definiert, mit dem keydown ereignis.
Die Tasten F1, F3 und F4 funktionieren nachwievor ohne Probleme, doch F2 streikt und tut gar nichts, dabei hat es vorher funktioniert...

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=VK_F1 then playaClick(Sender);
  if key=VK_F2 then breakaClick(Sender);
  if key=VK_F3 then stopaClick(Sender);
  if key=VK_F4 then fadeaClick(Sender);
end;
Ich versteh's nicht, da die anderen nach wie vor funktionieren.

Ach so:
Delphi-Quellcode:
procedure TForm1.breakaClick(Sender: TObject);
begin
  if playera.filename<>'then begin
    playera.Pause;
    timera.Enabled:=false;
  end;
end;
Liebe Grüße und vielen Dank im Voraus:
Kranich
Kai Lamers
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Drag&Drop Listbox ---> Groupbox (---> Label)

  Alt 6. Okt 2006, 00:04
Bitte mach zu einer neuen Frage auch einen neuen Thread auf.
Michael
Ein Teil meines Codes würde euch verunsichern.
 
Thema geschlossen


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 17:51 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