Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
eriX
Anmeldungsdatum: 01.03.2008 Beiträge: 24 Wohnort: Sachsen
|
Verfasst am: 19.09.2008, 16:04 Titel: Fenster per X schließen mit -s gui |
|
|
Wie der Titel schon sagt, versuche ich, dass man das fenster schließen kann, wenn man auf das X oben rechts klickt.
Google hat nicht wirklich was gebracht, da ich nur diskussionen ohne brauchbare antwort gefunden habe.
Vielleicht hab ich aber auch falsch gesucht.
Kann mir bitte jemand den Code senden? ich kompiliere mit -s gui.
Dann hab ich noch ne frage mit Buttons,wie mache ich einen grafisch klickbaren? Der soll eigentlich nur eine "goto" Funktion haben, auch wenn man das nicht verwenden soll. Wie geht das?
Ich würde auch jemand suchen, der mir bei einigen anderen Problemchen helfen könnte. Vll. ICQ oder MSN. Danke
Eric |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 19.09.2008, 16:50 Titel: |
|
|
Der Klick auf das X-Button sendet einen Tastencode Alt+F4. Der findet sich als Zeichen chr(255) + "k" wieder.
Code: | SCREEN 18
DO
' Hauptprogramm
LOOP UNTIL INKEY = CHR(255) & "k" ' Ende, wenn X-Button gedrückt wurde
END |
Was meinst du mit den grafisch klickbaren Buttons? Selbst erstellte? Siehe dazu GETMOUSE. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
eriX
Anmeldungsdatum: 01.03.2008 Beiträge: 24 Wohnort: Sachsen
|
Verfasst am: 19.09.2008, 17:20 Titel: |
|
|
Genau das hab ich gesucht! THX!!!
Aber bei den Buttons:
angenommen, es ist nur ein bereich auf dem Hintergrund bzw bild.
200*100 px welches vom fensterrand oben 100 px nach unten entfernt ist und 100 pixel nach rechts.
Bei einem Fenster vonn 800*600pixel.
wie mache ich das? Aus dem Code kann ich nicht schlau werden.
Code: | 'Grafikmodus setzen und Schleife beginnen
Dim As Integer x, y, buttons, Ergebnis
' Videomodus 320x200x8 setzen
Screen 13
Do
' Lade Mauskoordinaten ohne Mausrad.
Ergebnis = GetMouse (x, y, , buttons)
Locate 1, 1
If Ergebnis <> 0 Then
Print "Maus nicht vorhanden oder nicht im Fenster"
Else
Print Using "Maus-Position: ###:### Buttons: "; x; y;
If buttons And 1 Then Print "L";
If buttons And 2 Then Print "R";
If buttons And 4 Then Print "M";
If buttons And 8 Then Print "X1";
If buttons And 16 Then Print "X2";
Print Space(5)
End If
Loop While Inkey = ""
End |
_________________ www.programm-and-design.de |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 19.09.2008, 17:35 Titel: |
|
|
Der Code ist nicht sonderlich schwierig, dazu kann ich dir eigentlich nichts sagen, was nicht schon in der Referenz steht. Aber zu deinem Problem:
eriX hat Folgendes geschrieben: | 200*100 px welches vom fensterrand oben 100 px nach unten entfernt ist und 100 pixel nach rechts. |
Heißt also, du möchtest eine Aktion, wenn die Maus im Bereich zwischen (100, 100) und (300, 200) gedrückt wird.
Code: | DO
' irgendwelche Anweisungen
GETMOUSE mausx, mausy,, button
IF button = 1 THEN ' linke Maustaste gedrückt
IF mausx > 100 AND mausx < 300 AND mausy > 100 AND mausy < 200 THEN
' Maus befindet sich im gewünschten Bereich
' tue, was auch immer getan werden muss
END IF
END IF
LOOP UNTIL abbruchbedingung = erfuellt |
_________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
eriX
Anmeldungsdatum: 01.03.2008 Beiträge: 24 Wohnort: Sachsen
|
Verfasst am: 19.09.2008, 18:00 Titel: |
|
|
mmmh danke.
ich find mich in der FB referenz fast nicht zurecht. keine ahnung warum.
Danke @ all. _________________ www.programm-and-design.de |
|
Nach oben |
|
 |
|