Seite 1 von 3

Direkt auf Window zeichnen?

Verfasst: 01.06.2007 21:01
von PureBasic4.0
Hi Leute,

ich habe vor, eine Art VisualDesigner zu schreiben. Mein Problem ist dabei, dass während die Maus bei der Erstellung des Gadgets gedrückt ist, eine Art Box angezeigt wird (nur hohl). Siehe hier:

Bild

Wie kann man sowas direkt auf ein Window zeichnen? Das Ganze soll auch noch mit mehreren Gadgets auf einem Window funktionieren, deshalb fällt WindowedScreen bestimmt schon mal weg.

Außerdem gibt es in jedem VisualDesigner noch eine Funktion, um Gadgets zu resizen. Siehe hier:

Bild

Ich hoffe, ihr habt ein paar Ideen ;-)

PureBasic4.0

Verfasst: 01.06.2007 22:50
von pogi02
Also so ein Projekt ist schon ein bisschen zu gross für nen Anfänger programmier erstmal was kleines und setzt dich richtig mit der Sprache auseinander.

Du hast viel zu grosse Ziele

Mach erstmal kleine sinnlose programme um die Sprache erstmal richtig zu verstehen!

Verfasst: 01.06.2007 23:00
von Fluid Byte
Die Worte von pogi02 waren selbst für meinen Geschmack etwas harsch. Ist aber nen bissi was dran. Ich meine die Zeichenroutine alleine ginge ja noch aber gleich einen kompletten VisualDesigner ist wohl recht anspruchsvoll. Mal abgesehen davon das dies spo überflüssig wie ein weiterer Media Player ist.

Nichts des so trotz gebe ich dir nen Tipp. Du kannst nämlich mittels des XOR Mischung Verfahren leicht einen schwarzen Auswahlrahmen mit der Maus ziehen und an der vorangegangen Position einen zweiten Rahmen malen. Wenn du mit XOR arbeitest wird der alte Rahmen automatisch gelöscht. Was die Dragging-Punkte angeht, du kannst die Koordinaten an denen du sie zeichnest mit PtInRect_() verwenden um die Mouse Klicks zu registrieren.

Verfasst: 02.06.2007 14:31
von PureBasic4.0
@pogi02: Ich habe schon genug geproggt, um diesem Ziel würdig zu sein ;-). Finde ich zumindest. Hab's halt mal ins Anfänger Forum gestellt, weil ich das einfach noch von den Nooby Zeiten gewöhnt bin :lol:

@Fluid Byte: Ich habe extra
PureBasic4.0 hat geschrieben:eine Art VisualDesigner
geschrieben, weil es kein echter VisualDesigner werden soll. War halt so ein gutes Beispiel.

Zum Thema: Wie kann ich abfragen, ob die Maus gedrückt wird, gedrückt ist, oder gerade losgelassen wird? Brauche ich zum Rahmen zeichnen.

Verfasst: 02.06.2007 15:47
von DrShrek
PureBasic4.0 hat geschrieben:Zum Thema: Wie kann ich abfragen, ob die Maus gedrückt wird, gedrückt ist, oder gerade losgelassen wird? Brauche ich zum Rahmen zeichnen.
Deine Fragen entspechen aber er den Level eines Anfängers. Sorry.

Verfasst: 02.06.2007 15:54
von Dark Skillu
Aus der PB-Hilfe:

Code: Alles auswählen

MouseButton(Mausknopf)
Gibt 0 zurück, wenn der angegebene 'Mausknopf' nicht gedrückt wird, andernfalls ist der Knopf gedrückt. Eine beliebige Anzahl an Knöpfen kann zur gleichen Zeit gedrückt sein. ExamineMouse() sollte vor dieser Funktion aufgerufen werden, um den aktuellen Status der Mausknöpfe zu ermitteln.

'Mausknopf' kann eine der folgenden Konstanten sein:
#PB_MouseButton_Left : Überprüft, ob die linke Maustaste gedrückt wird
#PB_MouseButton_Right : Überprüft, ob die rechte Maustaste gedrückt wird
#PB_MouseButton_Middle: Überprüft, ob die mittlere Maustaste gedrückt wird

Vielleicht hilft dir das was ...

MfG

Verfasst: 02.06.2007 15:57
von PureBasic4.0
Danke, dass ihr alle an meinen Fähigkeiten als Progger zweifelt. :roll:

OK. Dr. Shrek :twisted: . OK, Mr. Oberschlaumeier. Dann erkläre mir mal den Syntax von Mouse_Event_() ! Bin sicher, das bekomme ich auch noch hin, aber eine Aufgabe brauchst du ja auch, sonst bist du unterfordert :evil:

@Dark Skillu: Ich möchte keinen Screen aufmachen. Deswegen funkioniert MouseButton nicht.

Verfasst: 02.06.2007 16:27
von DarkDragon
PureBasic4.0 hat geschrieben:Dann erkläre mir mal den Syntax von Mouse_Event_() !
http://msdn2.microsoft.com/en-us/library/ms646260.aspx

Da stehts. :wink:

Aber wozu benötigst du diesen Befehl?

Verfasst: 02.06.2007 16:41
von Kiffi
PureBasic4.0 hat geschrieben:OK, Mr. Oberschlaumeier.
als Bittsteller solltest Du Dich mit Deinen Äußerungen ein wenig bedeckter halten.

Verfasst: 02.06.2007 18:29
von Fluid Byte
Eine Art VisualDesigner? Was denn nun genau?
Zum Thema: Wie kann ich abfragen, ob die Maus gedrückt wird, gedrückt ist, oder gerade losgelassen wird? Brauche ich zum Rahmen zeichnen.
Du willst also "eine Art" VisualDesigner schreiben weisst aber nicht wie man den Status der Mousebuttons abfragt?

Viel Glück! Bild