Mausfrage
Übersicht

tmode00Betreff: Mausfrage |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
Mal ne kurze Frage, Ich benutze Blitz3d wo ja bekanntlich keine Gui Befehle wie window...button usw. funktionieren. Ich würde nun aber gern ohne umständlich mit Bildkollision zu Arbeiten gern Buttons machen die auf klick reagieren und optional vielleicht noch einen MouseOver Effekt haben Die Maus funktioniert einwandfrei, ich weis halt nur nicht ganz wie ich Sie auf Buttons (in Form von Bildern) reagieren lassen soll! Ich würde vielleicht selbst Lösungen finden, jedoch würde das mehrere A4 Seiten in Anspruch nehmen da ich leider Gottes noch an ,,Qbasic-Artige" Spaghettiprogrammierung gewohnt bin...(mit Goto und so) Ps.: Bitte nicht mit fach-chinesischen Begriffen Antworten, sondern so das auch ein Normalsterblicher es verstehen kann! Danke im Voraus |
||
While (1) : Wend |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ist doch total simpel.
Du hast die Mauskoordinaten (ql:MouseX(), ql:MouseY()), wo das Bild gezeichnet wurde (linke obere Ecke im Normalfall) und die Höhe und Breite des Bildes (zur Not ql:Imagewidth(), ql:Imageheight()). Ohne 4 Seiten voller fach chinesisch wirst du hoffentlich erkennen, dass man das in eine IF Abfrage packen kann... wie dem auch sei: ~VERSCHOBEN~ Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde. MfG D2006 |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Graphics 800,600,0,60
Repeat Cls If rectsoverlap(MouseX(),MouseY(),10,10,300,300,100,25) Then SetColor 255,0,255 Else SetColor 0,0,255 End If DrawRect 300,300,100,25 SetColor 255,255,255 SetColor 255,0,0 DrawRect MouseX(),MouseY(),10,10 If MouseHit(1) Then If rectsoverlap(MouseX(),MouseY(),1,1,300,300,100,25) Then Print "Hit" End If End If Flip Until KeyHit(key_escape) Function RECTSOVERLAP(x1,y1,w1,h1,x2,y2,w2,h2) If x1 > (x2 + w2) Or (x1 + w1) < x2 Then Return False If y1 > (y2 + h2) Or (y1 + h1) < y2 Then Return False Return True End Function EDIT: oh, der Code ist natürich für BlitzMax. Müsstest es gering portieren. Versuchs mal so, ist nicht die Beste lösung, hätte mir da auf jeden Fall nen eigenen Button Handler gebastelt mit dem das 10 mal besser hinzubekommen ist. |
||
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus |
tmode00Betreff: Danke |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das müsste leicht umgeschrieben gut funktionieren, vielen dank!
Ps.: Auf das ,,TOTAL SIMPEL" von D2006 kann ich nur sagen: Primitiv Grund: Es ist noch kein Meister vom Himmel gefallen! |
||
While (1) : Wend |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
primitiv?
hm, naja, sowas hier, beforzuge ic bei sowas: http://escape.designdevil.de/ |
||
between angels and insects |
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie ich bereits sagte ![]() Naja, da du ja QBasicler bist könnte man denken das du om Ansatz her weißt wie es sein soll. Die Befehle wurden ja teilweise genannt. Naja, ist ja auch egal. IMurDOOM |
||
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus |
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
aber imagerectcollide wäre viel einfacher.... | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group