AGB  ·  Datenschutz  ·  Impressum  







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

OnMouseDown: Nur bei rechtsklick??

Ein Thema von Sebastian Nintemann · begonnen am 8. Okt 2002 · letzter Beitrag vom 8. Okt 2002
Antwort Antwort
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#1

OnMouseDown: Nur bei rechtsklick??

  Alt 8. Okt 2002, 18:15
Hallo!

Also ich hab folgenden Code:

Code:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Cursor := crClosedHand; //das was ich eigentlich will
  Caption := 'click'; //nur um zu sehen ob überhaupt was gemacht wird
end;

Was passiert:
Clicke ich mit rechts, so steht 'click' in der Titelleiste und der Cursor ändert sich wie er soll.
Clicke ich aber mit links, steht zwar 'click' in der Titelleiste, der Cursor ändert sich aber nicht.
Das soll einer verstehen..
Woran kann das liegen?

Gruß, Sebastian
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2
  Alt 8. Okt 2002, 18:28
Wenn ich genau deinen Code verwende, funktioniert es mit rechts wie es soll, mit links wird die Caption sofort gesetzt, und der Mauscursor wird gesetzt, sobald ich die Maustaste wieder loslasse. Vielleicht wird in einer VCL-Anwendung der Cursor nicht aktualisiert, wenn die linke Maustaste gerade gedrückt ist? ;c)

Wenn ich den Cursor mit SetCursor() setze, wird er auch bei einem Linksklick sofort gesetzt, allerdings mit dem Loslassen wieder zurückgesetzt! Spricht wohl dafür, dass die VCL da ihre Finger im Spiel hat, oder? Du kannst das Problem also beheben, indem du mit SetCursor den Cursor setzt UND die Eigenschaft TForm.Cursor setzt.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3
  Alt 8. Okt 2002, 18:38
Genau wie bei mir auch. Wobei hinzukommt, dass er crClosedHand nicht kennt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von d3g
d3g

Registriert seit: 21. Jun 2002
602 Beiträge
 
#4
  Alt 8. Okt 2002, 19:26
Hi Grotesquery,

was ich mir vorstellen könnte, ist, dass du nicht auf das Formular, sondern auf eine Komponente (z.B. TPanel) linksklickst und deshalb bei TForm keine Message bekommt und auch nicht OnClick auslöst. Wenn du aber rechtsklickst würde ich sagen, dass die Message entweder von TPanel (o.ä.) oder von der jeweiligen Windows-Klasse an den Parent (TForm) weitergegeben wird. Ich kanns leider nicht ausprobieren (im Moment kein Windows und es mit Kylix auszuprobieren hat wohl keinen Sinn, da CLX und nicht VCL), aber schau mal nach, ob du wirklich auf das Hauptfenster und nicht auf irgendeine Fensterklasse die draufliegt klickst.

MfG,
d3g
-- Crucifixion?
-- Yes.
-- Good. Out of the door, line on the left, one cross each.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#5
  Alt 8. Okt 2002, 19:44
Moin d3g,

schade, dass Du es gerade nicht testen kannst, aber das tritt sogar auf, wenn Du nur ein Formular nimmst, und sonst nichts.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#6
  Alt 8. Okt 2002, 21:06
Hallo, danke für die Antworten. Es war wirklich nur eine Form ohne irgendwelche Komponenten drauf. Ist jetzt zwar nicht ganz klar geworden wieso es so ist, aber wenigstens wie mans umgehen kann, ist doch schonmal was 8)

Also danke an alle!
Gruß Sebastian

edit: crClosedHand ist übrigens ein funktionierender (das zeigt bei mir das Ergebnis vom Rechtsklick) von mir geladener Cursor.
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:31 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