Autor Beitrag
Wolle92
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Mi 04.06.08 14:06 
Hallo,

ich schätze, alle kennen das Prinzip Maus drücken + ziehen...
Das funktioniert mit MouseDown und MouseMove ja ganz gut, solange man dabei nur eine einzelne Komponente benutzt...
Ich habe jetzt aber ein Spielfeld, das aus vielen einzelnen Images besteht...
Jetzt funktioniert das MouseDown und MouseMove nicht mehr, da der Sender immer das Image ist, wo das MouseDown stattgefunden hat, und nicht das, auf dem man sich grade bewegt...

Gibt es eine Lösung dafür?

_________________
1405006117752879898543142606244511569936384000000000.
nagel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 708

Win7, Ubuntu 10.10

BeitragVerfasst: Mi 04.06.08 14:21 
Das einfachste wäre wohl, alles auf ein Image zu zeichnen.
Wolle92 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Mi 04.06.08 18:31 
Ne, das geht nicht, da das Spielfeld dann gespeichert werden muss, wo welche art von Block ist...
Und ich will den Nutzer nicht damit überfordern auf 486 Felder zu klicken, um deren Typ zu ändern...

Das muss doch möglich sein...

btw: Ich scheue keine Windows-Programmierung (Sekundärprogrammiersprache C++)

_________________
1405006117752879898543142606244511569936384000000000.
LexXis
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 170
Erhaltene Danke: 3



BeitragVerfasst: Mi 04.06.08 21:18 
MouseDown.. MouseMove.. Klingt für mich ein Bischen nach Drag 'n' Drop.
Das wäre ja relativ einfach zu implementieren.
Natürlich vorausgesetzt, dass ich jetz nix Falsches in deine Aussage hinein interpretiert hab :)
Wolle92 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Do 05.06.08 16:53 
naja, drag'n'drop ist es nicht ganz... Oder verstehst du ne Linie bei Paint auch als Drag'n'Drop?

_________________
1405006117752879898543142606244511569936384000000000.
LexXis
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 170
Erhaltene Danke: 3



BeitragVerfasst: Fr 06.06.08 11:47 
Wenn man von panels statt Pixeln ausgeht schon ^^

Sowas in der Art hatte ich auch im Kopf, nur eben ein, zwei Nummern größer.
Wolle92 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Fr 06.06.08 13:07 
okay... und wie mach ich das?

_________________
1405006117752879898543142606244511569936384000000000.
Guenther A.
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Fr 06.06.08 13:43 
Titel: Gibt es nicht die Ereignisse ONDRAG und ONDROP?
Die gehen doch eigentlich über die Komponenten hinweg. Jede Komponente, über der sich das gezogene Objekt dann befindet erhält außerdem ein DRAGOVER (o.ä.) Ereignis und kann signalisieren, ob es das gezogene Objekt anehmen würde. Mit ONDROP wird dann der ZielKomponente mitgeteilt, wo das gezogene Objekt "fallengelassen" wurde.

Gruß Guenther
_frank_
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 343
Erhaltene Danke: 1

Win XP
Delphi 3 Prof / Turbo Delphi Explorer
BeitragVerfasst: Fr 06.06.08 14:30 
ich würde sowas vermutlich auf nichtvisueller ebene lösen und dann visuell darstellen...
also eine zeichenfläche und die eigentlichen Prüfungen/Eigenschaftsverwaltung mit unsichtbaren Objekten.

wenn du SVN hast, kannst dir ja mal www.sf.net/projects/circuitboard anschauen...dort hab ich das ähnlich gemacht (Drag&drop,verbindungslinien,...)
wenn du kein svn hast, kann ich dir den source auch mal so schicken.

Gruß Frank

_________________
EB FE (die wahrscheinlich kürzeste Endlosschleife der Welt :) )
BA 01 00 00 00 52 EB 09 BB 4D 11 86 7C FF D3 EB 0D E8 F2 FF FF FF 63 68 61 72 6D 61 70 00 C3