AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Maus beschränken

Ein Thema von SaFu · begonnen am 21. Feb 2007 · letzter Beitrag vom 28. Feb 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#1

Maus beschränken

  Alt 21. Feb 2007, 07:38
Hi

Habe ein Problem und zwar beschränke ich meine Maus auf 3 Formblätter mi folgenden Code

Delphi-Quellcode:
procedure TForm8.FormShow(Sender: TObject);
Var maus :tRect;
begin
  maus.Left:= Left;
  maus.Top:= Top;
  maus.Right:= Left + Width;
  maus.Bottom:= Top + Height;
  ClipCursor(@maus);
da die Formblätter auf einen Externen Monitor angezeigt werden, wenn ich mir jetzt die Maus auf meinen internen Monitor wieder holen will schalte ich mir die Maus so wieder frei und ziehe sie mir auf meinen Monitor

Delphi-Quellcode:
procedure TForm8.Button2Click(Sender: TObject);
begin
 ClipCursor(nil);
end;
Mein Problem ist jetzt wie bekomm ich die Maus wieder zurück auf die 3 Formblätter

Danke sascha
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.279 Beiträge
 
Delphi 12 Athens
 
#2

Re: Maus beschränken

  Alt 21. Feb 2007, 08:13
Indem du den Bereich wieder setzt?

Also ClipCursor erneut setzen:
Delphi-Quellcode:
maus.Left:= Left;
...
ClipCursor(@maus);
Wenn du keinen doppelten Code haben willst, dann entweder dieses in eine Prozedur auslagern,
oder falls sonst nichts Weiters in FormShow drin ist, dann kannst du dieses auch direkt aufrufen:
FormShow(Sender); Die Maus wird dann ja auch wieder in diesen Bereich reingezungen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Maus beschränken

  Alt 21. Feb 2007, 08:44
Ich muss dies aber von einer anderen Form machen und das geht so glaube ich nicht
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.279 Beiträge
 
Delphi 12 Athens
 
#4

Re: Maus beschränken

  Alt 21. Feb 2007, 09:01
Wenn du die Unit dieser Form (von TForm8) in die andere einbindest, dann hast du dort auch Zugriff auf die andere Form (TForm8).

In der Unit existiert doch eine gloale Variable (Form8) ... über diese bekommst du Zugriff auf die öffentlichen Funktionen der Form (TForm8).

z.B.:
Delphi-Quellcode:
Uses ..., Unit8;


Form8.FormShow(Sender);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: Maus beschränken

  Alt 21. Feb 2007, 17:24
Ich glaube ich stehe auf dem Schlauch weis leider nicht was du mir damit sagen willst
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.279 Beiträge
 
Delphi 12 Athens
 
#6

Re: Maus beschränken

  Alt 24. Feb 2007, 10:40
Wenn du die Unit des Formulars in eine andere Unit einbindest, dann hast du von dort aus zugriff auf die öffentlichen Deklarationen der eingebundenen Unit.
Du kannst also ganz leicht auf auf eine andere Form zugreifen, solange du deren Unit da einbindest, von wo aus du darauf zugreifen willst.

Daran ist doch wohl nichts schwer zu verstehen, oder?


Weiterhin weißt du doch schon wie du die Maus auf deinen Forularen einsperrst?
Das freigeben bekommst du ja auch schon hin.
Und wie du die Maus danach wieder zurück auf die/das Formular(e) bekommst ist doch auch einfach ... du setzt einfach nochmal die entsprechende Beschränkung.


Wenn du das nun mal gründlich durch deinen Kopf gehen läßt, dann sollten dir doch mindestens 2 Lösungen einfallen?


1: du rufst ClipCursor da auf, wo du grad im QuellCode bist und holst dir die Position der gewünschten Form,
Delphi-Quellcode:
Uses ... Unit8;


maus.Left := Form8.Left;
maus.Top := Form8.Top;
maus.Right := Form8.Left + Form8.Width;
maus.Bottom := Form8.Top + Form8.Height;
ClipCursor(@maus);
2: oder du definierst dir in der Form eine Prozedur, welche den Bereich setzt und rufst diese dann einfach auf.
Delphi-Quellcode:
Type TForm1 = Class(TForm)
  ...
  Public
    Procedure EinName;
  End;


Procedure TForm8.EinName;
  Var maus: TRect;

  Begin
    maus.Left := Left;
    maus.Top := Top;
    maus.Right := Left + Width;
    maus.Bottom := Top + Height;
    ClipCursor(@maus);
  End;
Delphi-Quellcode:
//andere Unit
Uses ... Unit8;


Form8.EinName;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Maus beschränken

  Alt 24. Feb 2007, 10:51
Achso hast du das gemeint habe es nicht ganz verstanden.
Das sind ja Basics hab mal wieder zu kompliziert gedacht

Dank dir aber trotzdem
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.279 Beiträge
 
Delphi 12 Athens
 
#8

Re: Maus beschränken

  Alt 24. Feb 2007, 10:54
Tja, manchma isses halt einfacher, als man denkt.

Schlimmer isses nur, wenn man denkt es sei einfach und nachher fällt einem der Himmel auf'm Kopf
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Maus beschränken

  Alt 24. Feb 2007, 11:02
woran du denken solltest: Wenn man Strg + Alt + Entf drückt wird der gefangene Cursor auch wieder frei gelassen. Je nachdem was du mit dem einfangen des Cursors bezweckst gibt es eventuell andere Möglichkeiten dein Vorhaben zu realisieren.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Maus beschränken

  Alt 24. Feb 2007, 11:20
Kann es sein das es nicht funktioniert wenn die Eigenschaft Borderstyle der Form auf bsNone steht.

Zwar geht es beim ersten mal wenn die Form aufgerufen wird aber wenn ich die Beschränkung weg nehme und will sie dann wieder setzen geht es nicht.

Bei anderen FormBlätter die bsSizeable sind funktioniert es aber dann auch.

Gibt es vielleicht noch eine andere altenative die maus zu beschränken, die nicht soviel ärger macht
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz