AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Drag and Drop

Ein Thema von Anonymos · begonnen am 21. Mär 2009 · letzter Beitrag vom 22. Mär 2009
Antwort Antwort
Anonymos
(Gast)

n/a Beiträge
 
#1

Drag and Drop

  Alt 21. Mär 2009, 18:47
Abend DP

Also ich habe theoretisch ein ganz einfaches Problem.
Ich will in einem Programm von mir per Drag & Drop StringgridZellen in Listboxen überschreiben.

Soweit kein Problem.

Aber jetz wollte ich dass ganze kenntlich machen.
D.h. ich wollte bei MouseDown den Cursor auf crDrag setzen und ei MouseUp wieder auf Normal.

Delphi mag dass aber nicht. Der verändert den Cursor erst bei MouseUp, auch wenn es in MouseDown steht.

Schonmal Danke im Voraus
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

Re: Drag and Drop

  Alt 21. Mär 2009, 18:51
Hallo,

wie sieht dein vorgehen genau aus?

hast du Dragmode auf automatic?

Gruß Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Anonymos
(Gast)

n/a Beiträge
 
#3

Re: Drag and Drop

  Alt 21. Mär 2009, 19:50
Nein ich hab Dragmode auf Manuel

Also ich hab ein Stringgrid, in dem Stehen in einer Zeile, erst ein Name und dann noch diverse Zellen mit Anderen Daten.
Das heißt, ich hab Rowselect auf true, falls das was ändert

Wie das mit dem Dragmode funktionieren soll, hab ich nun leider überhaupt keine Ahnung, des hab ich bisher noch nie benutzt, sorry.

Hab des jetz allerdings mal ausprobiert und:
Der Cursor ändert sich beim Drücken,
Aber iwie egal was ich mach immer zu diesem Fehler/Geht-nicht Kreis

Wenn Delphi des iwie automatisch könnte, wär mir auch recht, aber ich will ja nur den Inhalt einer einzelnen Zelle in einer ausgewählten Reihe in RichEdits einfügen.
(Nicht wie oben geschrieben Listboxen, ich hab da was geändert).

mfg
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Drag and Drop

  Alt 21. Mär 2009, 19:59
Zitat von Anonymos:
Aber iwie egal was ich mach immer zu diesem Fehler/Geht-nicht Kreis
Der bedeutet, dass du bei der Komponente, über die du gerade ziehst, nicht in OnDragOver sagst, dass an der Stelle der aktuelle Dragvorgang akzeptiert würde.

Wenn du bei der Komponente in OnDragOver Accept auf True setzt, dann signalisiert Delphi mit dem entsprechenden Cursor, dass man dort das Gezogene fallen lassen könnte.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

Re: Drag and Drop

  Alt 21. Mär 2009, 20:15
probier mal folgendes:

Ereignis dragover im richedit, damit wird das drag von einem Grid akzeptiert
Delphi-Quellcode:
procedure TForm1.RichEdit2DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  accept:=source is TStringGrid;
end;
und

und im Dragdrop beim richeidt
Delphi-Quellcode:
procedure TForm1.RichEdit2DragDrop(Sender, Source: TObject; X, Y: Integer);
Var grid:TStringGrid;
    Richedit:TRichEdit;
begin
  if Source is TStringGrid then
    begin
      grid:=source as TStringGrid;
      Richedit:=sender as TRichEdit;

      Richedit.SelText := grid.Cells[grid.col,grid.row]; //mußt du selber anpassen
    end;
end;
im grid reicht ein (bei dragmode=dmmanual):
Delphi-Quellcode:
procedure TForm1.StringGrid3MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  TStringGrid(Sender).BeginDrag(false,10);
end;
mit dmautomatic könntest du nix selektieren, sorry, war auf eine Listbox aus. beim Grid macht dmautomatic nich viel Sinn.

Gruß Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Anonymos
(Gast)

n/a Beiträge
 
#6

Re: Drag and Drop

  Alt 22. Mär 2009, 13:54
Hey, Danke

Funzt wunderschön.

(Und wieder einmal das Geheimnis um 2 weitere ominöse Funktionen im Objektinspektor gelüftet)

Dann mmach ich mich mal an die Arbeit

mfg
Anonymos
  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:57 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