Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Rechte Mouse Taste inaktive machen in form1. (https://www.delphipraxis.net/101567-rechte-mouse-taste-inaktive-machen-form1.html)

Anakond 15. Okt 2007 17:00


Rechte Mouse Taste inaktive machen in form1.
 
Hallo,
Ist es möglich durch drücken button1 die rechte Mouse-taste abzuschalten das heißt die rechte Mouse-taste wird inaktive.
Wenn man den button2 drückt dann wird die rechte Mouse-taste wieder aktive. Kann man so etwas programieren....
Sehr vielen Dank für Ihre Hilfe.

Grüss

Progman 15. Okt 2007 17:43

Re: Rechte Mouse Taste inaktive machen in form1.
 
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    RechteMouse: Boolean;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  RechteMouse:=False;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  RechteMouse:=True;
end;

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbRight) then begin
    if not RechteMouse then
      Label1.Caption:='Rechte Maustaste ausgeschaltet!'
    else
      Label1.Caption:='Rechte Maustaste ein'
  end;
end;
so geht es ;)

Anakond 16. Okt 2007 08:19

Re: Rechte Mouse Taste inaktive machen in form1.
 
Hallo, vielen Dank für deine Antwort, jetzt kann ich mehr daraus tun.
Ich hätte noch eine frage: wie kann man die Mouse Taste abschalten im RichEdit.
Z.b wenn man im RichEdit mit der Linke Mouse Taste im Text Klickt zwischen Rich und Edit "Rich(caret)Edit" der Caret blinkt dazwischen.
Mein Ziel ist wenn man mit der Linke Mouse Taste drückt die soll nicht aktiv werden, also wirkungslos.

Wie zum beispiel mit der Key Taste, kann man eine Taste drückt auf #0 setzen.

Delphi-Quellcode:
procedure TForm1.Richedit1KeyPress(Sender: TObject; var Key: Char);
begin
  if (Key in ['A'..'Z', 'a'..'z', '0'..'9']) then  Key := #0;
end;
Ist sowas auch mit der Mouse Taste möglich.

Delphi-Quellcode:
procedure TForm1.Richedit1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then ????? Button := #0  ????
end;
Sehr viele Dank für die Infos. Schönen Tag, Grüss.

Anakond 16. Okt 2007 08:21

Re: Rechte Mouse Taste inaktive machen in form1.
 
Zitat:

Zitat von Anakond
Hallo, vielen Dank für deine Antwort, jetzt kann ich mehr daraus tun.
Ich hätte noch eine frage: wie kann man die Mouse Taste abschalten im RichEdit.
Z.b wenn man im RichEdit mit der Linke Mouse Taste im Text Klickt zwischen Rich und Edit "Rich(caret)Edit" der Caret blinkt dazwischen.
Mein Ziel ist wenn man mit der Linke Mouse Taste drückt die soll nicht aktiv werden, also wirkungslos.

Wie zum beispiel mit der Key Taste, wenn man eine Taste drückt wird die auf #0 setzen.

Delphi-Quellcode:
procedure TForm1.Richedit1KeyPress(Sender: TObject; var Key: Char);
begin
  if (Key in ['A'..'Z', 'a'..'z', '0'..'9']) then  Key := #0;
end;
Ist sowas auch mit der Mouse Taste möglich.

Delphi-Quellcode:
procedure TForm1.Richedit1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then ????? Button := #0  ????
end;
Sehr viele Dank für die Infos. Schönen Tag, Grüss.



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:23 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