AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDown)?
Thema durchsuchen
Ansicht
Themen-Optionen

Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDown)?

Ein Thema von Der_Ventilator · begonnen am 10. Okt 2004 · letzter Beitrag vom 15. Okt 2004
Antwort Antwort
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#1

Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDown)?

  Alt 10. Okt 2004, 21:15
Hi

Ich hab mir ne eigene Komponente programmiert, die beim Klick auf ihr canvas eine Aktion ausführt (es ist so eine Art ListBox, aber egal)

Jedenfalls wollte ich, dass beim OnEnter Ereignis erst die Liste aktualisiert wird, aber anscheinend wird erst das OnMouseDown Ereignis aufgerufen (wenn ich auf die Compo klicke), bevor das OnEnter Ereignis zuschlägt. Kann man das irgenwie umdrehen, weil sonst mein Programm nicht funktioniert wie es sollte.

Einfach das Listenaktualisierenereignis beim mousedown aufrufen ist auch keine lösung, weil das ja nur einmal geschehen soll. Außerdem muss vor dem keydown ja auch erst das OnEnter Ereignis zuschlagen.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 10. Okt 2004, 21:17
umkehren macht kein sinn da die messages in dieser reihenfolge ankommen. Die reihenfolge ist ja auch logich denn das onEnter wird ja ausgelöst weil du die Maustaste drückst. Das heißt das im Mousedown vermutlich der Focus erst auf deine Komponente gesetzt wird und somit auch vorher die Maus schon gedrückt wurde.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 11. Okt 2004, 14:42
Gibts nich OnFocus der so?
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 11. Okt 2004, 15:35
Also, ich hab das mit zwei Kompos aus der VCL getestet (TButton und TListbox) und beide kommen der Reihenfolge nach in OnEnter , OnMouseDown, OnClick, OnMouseUp!
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 12. Okt 2004, 18:02
merkwürdig, bei mir läuft das bei meiner Komponente andersherum ab als bei einem Button

Delphi-Quellcode:
type
  Tgliste2 = class(TCustomControl)
  private
   {...}    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    procedure mousedown( Button: TMouseButton;
                      Shift: TShiftState; X, Y: Integer); override;
     {...}
    { Public-Deklarationen }
  published
 
    { Published-Deklarationen }
{...}
      property OnEnter;
  end;
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 12. Okt 2004, 18:05
nur so, ohne das genauer angeschaut zu haben,
rufts du im OnMouseDown inherited auf ?
Wenn ja vor oder nach deinem Code ?
  Mit Zitat antworten Zitat
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#7

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 12. Okt 2004, 20:50
hmmm..irgendwie überhaupt kein inherited...

das muss ich mal testen bzw, kann mir das jemand mal genau erklären

(bisher weiß ich, dass das nur irgendwie in der Basisklasse sucht und deren Ereignis ausführt oder so)
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 13. Okt 2004, 07:00
Zitat von Der_Ventilator:
hmmm..irgendwie überhaupt kein inherited...

das muss ich mal testen bzw, kann mir das jemand mal genau erklären

(bisher weiß ich, dass das nur irgendwie in der Basisklasse sucht und deren Ereignis ausführt oder so)
probier mal einfach als erstes in deiner funktion ein
inherited; Es könnte ja sein, das das OnEnter dann in dem inheried aufgerufen wird...
  Mit Zitat antworten Zitat
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Wann wird das OnEnter Ereignis aufgerufen (bvr OnMouseDo

  Alt 15. Okt 2004, 12:47
danke
  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 11:37 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