Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Mausfunktionen: Koordinaten/Mausrad setzen?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 03.03.2005, 19:04    Titel: Mausfunktionen: Koordinaten/Mausrad setzen? Antworten mit Zitat

Hi!

Ich schreibe gerade ein Programm, das nur die in freeBASIC integrierten Mausfunktionen benutzt, keine externen DLLs wie SDL o.ä.
Mit GETMOUSE kann man die Koordinaten der Maus abfragen. Ist es auch möglich, die Koordinaten bzw die Stellung des Mausrades im Programm zu beeinflussen?
Das Handbuch erwähnt keinen Befehl wie SETMOUSE o.ä.


Thx für eure AWs!
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mecki
Igel


Anmeldungsdatum: 10.09.2004
Beiträge: 985
Wohnort: Niederbayern

BeitragVerfasst am: 04.03.2005, 16:32    Titel: Antworten mit Zitat

Hi Dusky_Joe,

In Version 0.12 wirst du eine SETMOUSE-Funktion bekommen, die es dir erlaubt, die Mausposition und den Sichbarkeits-Flag zu setzen.

Was noch nicht geht ist, die Cursor-Gestalt zu verändern.

Grüßle,
Mecki

PS: sorry für die späte Antwort
_________________
» Yodl.de: So sucht man gestern. verwundert
» Geld verdienen im Netz + ICQ.
» Firefox!
» 100€ zu gewinnen
» FreeBASIC.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Stephan



Anmeldungsdatum: 05.10.2004
Beiträge: 358
Wohnort: Hessen - 20km Nördlich von Frankfurt am Main

BeitragVerfasst am: 04.03.2005, 16:59    Titel: Antworten mit Zitat

du könntest die Win API benutzen,falles es ein WIndows programm ist.

dort gibt es eine funktion SETCURSORPOS , damit geht das recht einfach.
einfach einen type anlegen,der X & Y koordinaten ethält,und positionieren.
_________________
'Wir schätzen die Zeit erst, wenn uns nicht mehr viel davon geblieben ist.'
Leo Tolstoi
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 04.03.2005, 20:45    Titel: Antworten mit Zitat

Hmmm.... klingt interessant...
Aber: Ich schreibe im SCREEN 19,8,2,1 da werden Win-Funktionen wohl ned so gut funzen, oder?
Wenn nämlich das Prog gestartet wird, is der Mauscursor automatisch in der Bildschirmmitte, hat also mit der Win-Pos nix zu tun...

trotzdem danke für den Tipp, werds ausnutzen, wenn ich mal ne Win-Anweisung hernehme, bei der ich das brauche cool
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stephan



Anmeldungsdatum: 05.10.2004
Beiträge: 358
Wohnort: Hessen - 20km Nördlich von Frankfurt am Main

BeitragVerfasst am: 04.03.2005, 22:26    Titel: Antworten mit Zitat

das hat nichts mit der auflösung zu tuhen,
den mauszeiger kannst du immer positionieren,völlig egal welches programm & welche auflösung.

Deklaration:
Code:

DECLARE FUNCTION SetCursorPos LIB "USER32.DLL" ALIAS "SetCursorPos" (BYVAL x AS LONG, BYVAL y AS LONG) AS LONG


Aufruf
Code:

x=100 : y=200
SetCursorPos  x,y


halt entsprechend nach FreeBasic angepasst.

und per API ist es auch kein problem den Mauscursor zu ändern,
im grunde genommen macht eine entsprechend (wenn vorhanden) FreeBasic
funktion auch nichts anderes.
_________________
'Wir schätzen die Zeit erst, wenn uns nicht mehr viel davon geblieben ist.'
Leo Tolstoi
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 05.03.2005, 16:01    Titel: Antworten mit Zitat

Die Auflösung war es auch gar nicht, auf die ich hinaus wollte. Ich war mir nur nicht ganz sicher, ob es auch im Vollbild-Modus funktioniert. Sollte aber sicher auch funktionieren *g*

Naja, egal, jetzt ist ja die 0.12 da, da gibts auch schon ein integriertes SETMOUSE *g*
Was ich daran aber vermisse, ist die Möglichkeit, das Mausrad zu beeinflussen; die Syntax ist

SETMOUSE x, y, sichtbar

Was ist das eigentlich für ein Wert, der da Zurückgegeben wird?
DECLARE FUNCTION SetCursorPos (...) AS LONG

Muss ja was zu bedeuten haben, oder?
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
holger_b71



Anmeldungsdatum: 14.09.2005
Beiträge: 12

BeitragVerfasst am: 27.01.2006, 09:48    Titel: Maus im Textmodus? Antworten mit Zitat

Kann man die Maus-Funktionen auch im Text-/Konsolenmodus
verwenden?

(GetMouse funktioniert offensichtlich nur bei Grafik)

Gruß

H.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 27.01.2006, 11:57    Titel: Antworten mit Zitat

Wie kann ich die gedrückten Mausbuttons zurücksetzen?
Wenn ich die Maus mit 'nem Rechtsklick zum Abbrechen in der Dos-Box verwende,
ist bei der nächsten Abfrage offensichtlich noch ein 'KeyPress' vorhanden und
die Abfrage funktioniert nicht(richtig).
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 27.01.2006, 21:02    Titel: Antworten mit Zitat

@ytwinky
Evtl. hast du bei deiner Abfrage ein GetMouse vergessen; bei diesem Code wirst du feststellen, dass die Buttons automatisch zurückgesetzt werden:

Code:
Option Explicit
Dim As Integer mX, mY, mW, mB

'Screen 14

Do
   GetMouse mX, mY, mW, mB

   Locate 1
   ? Using "X:           ####"; mX
   ? Using "Y:           ####"; mY
   ? Using "Wheel:       ####"; mW
   ? Using "Buttons: &"; Bin(mB, 8)

   Sleep 1
Loop Until Len(Inkey)


@ holger_b71
As you see, dieses Beispiel fuzt sowohl in Konsolen- als auch in Gfx-Modi.
Das kannst du auch aus der Referenz herauslesen:
http://fb.exp-soft.de/r.php?s=GETMOUSE
Allerdings musst du dazu eine FB-Version ab 0.14 haben... oder v0.15b? Ich bin mir nicht ganz sicher, du solltest aber zumindest die letzte stable Version (also 0.15) benutzen, besser noch die aktuelle Beta-Version 0.16b.




Nur so nebenbei: Die Position des MAUSRADES kann man - auch fast 10 Monate nach der Thread-Eröffnung noch nicht beeinflussen, wie?
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 27.01.2006, 21:17    Titel: Antworten mit Zitat

Danke Dusty,
ich schau mal nach..
[Edit]
..so, ich hab jetzt am Anfang und am Ende eine GetMouse(..)-Abfrage eingesetzt.
ButKeyPr.Bas läuft auch fast zu meiner Zufriedenheit(deshalb ist es auch auf ytwinky.freebasic.de verfügbar).
Wenn ich allerdings, um das Fenster zu schließen, irgendwohin klicke(mit Rechts) und danach mit Linksklick das Kontext-Menü schließe,
KANN es sein, daß der nächste Aufruf trotzdem noch eine gedrückte Taste erhält..
Könnte eine Schleife zur Abfrage helfen oder erkennt GetMouse() die Klicks doch nicht so, wie ich das möchte?
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 28.01.2006, 00:49    Titel: Antworten mit Zitat

Mein Beitrag:

Zeichne eine 16x16 oder 32x32 bitmap cursor datei und speichere sie. dann lädtst du sie in ein image oder ein array und setzt

Code:

'PSEUDOCODE
setmouse ,,1 'sodass die Maus verschwindet.
while inkey$=""
getmouse xm,ym
put xm,ym,mousebild
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 28.01.2006, 01:19    Titel: Antworten mit Zitat

Danke psygate,
aber das verstehe ich jetzt nicht mehr grinsen
Ich schau es mir an, wenn ich ausgeschlafen habe..
[Edit]
Also ButKeyPr.Bas gibts erstmal nicht mehr..
ConText hat Folgendes geschrieben:
Option Explicit

Public Sub ResetMaus()
Asm
Xor AX, AX 'Schnellster Befehl, um den Akku zu löschen; Funktion 0=MausReset
' Int &h33 '&h33 ist der MausInterrupt..
End Asm
?"Ein sch”nes Programm, leider kann FB-ASM keine Interrupts ausf?hren.."
End Sub

ResetMaus
Sleep
End
Sowas schwebte mir eigentlich vor..
Tschüsssiiiii
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..

Zuletzt bearbeitet von ytwinky am 29.01.2006, 18:03, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 28.01.2006, 08:53    Titel: Antworten mit Zitat

@psygate
Hast du etwa darauf geantwortet?
Mecki hat Folgendes geschrieben:
Hi Dusky_Joe,

In Version 0.12 wirst du eine SETMOUSE-Funktion bekommen, die es dir erlaubt, die Mausposition und den Sichbarkeits-Flag zu setzen.

Was noch nicht geht ist, die Cursor-Gestalt zu verändern.

Grüßle,
Mecki

PS: sorry für die späte Antwort

Wenn ja:
Der Post war vor dir hier im Forum.
(Du hast dich am 05.04.2005 Eingetragen und der Post ist von 04.03.2005)
lachen
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
holger_b71



Anmeldungsdatum: 14.09.2005
Beiträge: 12

BeitragVerfasst am: 28.01.2006, 19:41    Titel: Antworten mit Zitat

@Dusky_Joe

Danke für Deine Antwort!

Bei mir kommt im Textmodus eine Fehlermeldung (v0.14):

libfb_io_mouse.c: (.text+0xfa): undefined reference

Noch eine Frage:
Du schreibtst die letzte Stable Version sei 0.15; im Download-Bereich
ist beim "Komplettpaket" die Version 0.14 dabei und als letzte Compiler-
Version 0.15b (also Beta, oder?).

Oder gibt es eine offizielle Download-Seite mit höheren/aktuelleren Versions-Nr.?

Gruß

H.

PS: Hier nochmal mein Dank an alle FB-Entwickler.
FB ist das, worauf ich jahrelang gewartet habe - DANKE!
zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 28.01.2006, 20:33    Titel: Antworten mit Zitat

Hallo.

Du bekommst die aktuellste Stable-Version von FreeBASIC (0.15b) entweder auf meiner Homepage oder auf der offiziellen, englischsprachigen Homepage freebasic.net. Da gibts auch noch 0.16b, die aktuelle Testingversion. Egal woher du die Version beziehst, musst du vorher die Alte deinstallieren!! Überinstallationen führen i.d.R. zu Katastrophen... durchgeknallt

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Devilkevin
aka Kerstin


Anmeldungsdatum: 11.11.2004
Beiträge: 2532
Wohnort: nähe Mannheim

BeitragVerfasst am: 28.01.2006, 21:26    Titel: Antworten mit Zitat

Sebastian hat Folgendes geschrieben:
Egal woher du die Version beziehst, musst du vorher die Alte deinstallieren!! Überinstallationen führen i.d.R. zu Katastrophen... durchgeknallt


Oh ja durchgeknallt

Is nicht sehr geschickt gemacht, allerdings installieren sich Compiler/Ide/Kommplettpakete mittlerweile in alle möglichen Verzeichnisse.

mal ist es C:\
mal C:\freeBASIC\
oder auch C:\Programme\freeBASIC

Man sollte sich mal auf was einigen durchgeknallt durchgeknallt

@Mecki: Update mal dein Kommpletpaket Download. Sowhol IDE als auch Compiler sind veraltet.
_________________
www.piratenpartei.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 29.01.2006, 07:45    Titel: Antworten mit Zitat

Ein Aktuelles Komplett Paket ist im moment unter
http://sourceforge.net/projects/fbide
erhältlich.
Ein Altes Komplet Paket gibt es auf http://vongodric.darkwizard.org/fbide/modules/mydownloads/.
(Das mag ich an der IDE nicht, 2 Webseiten, die Unterschiedlich gepfelgt sind ...)
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Mecki
Igel


Anmeldungsdatum: 10.09.2004
Beiträge: 985
Wohnort: Niederbayern

BeitragVerfasst am: 29.01.2006, 15:04    Titel: Antworten mit Zitat

Sorry, schon geändert. Wenn das System wieder mit CodeSharingX betrieben wird kann das in Zukunft jeder machen happy

Also es is jetz wieder das aktuelle Sofortpaket online mit aktuellem Compiler. Dachte immer, dass VonGodric das Erstellen eines neuen Pakets einfach verpennt hat..
_________________
» Yodl.de: So sucht man gestern. verwundert
» Geld verdienen im Netz + ICQ.
» Firefox!
» 100€ zu gewinnen
» FreeBASIC.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz