Einzelnen Beitrag anzeigen

Benutzerbild von Coder1990
Coder1990

Registriert seit: 3. Nov 2007
116 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Event Zuweisung und Modifikation in eigenen Komponenten

  Alt 22. Jul 2008, 21:16
äh?

doppelklick auf select cell bei einem normalen tstringgrid und du erhälst diese parameter für die event procedure...


Zitat von Coder1990:
Zitat von dataspider:
Hi,

mir fällt erst mal folgendes auf die Schnelle auf.

Delphi-Quellcode:
// aus TComponent
procedure DragOver(Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); dynamic;
// deine methode
procedure DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); override;
Ich denke, du erkennst den Unterschied.

Weiterhin sind die Methoden OnMouseWheelDown, OnMouseWheelUp, OnDragOver ... bereits als Published definiert (TDrawGrid).

Also, pass die Methoden an und lass die bereits als Published definierten Members in deiner Klasse weg.

Frank
Delphi-Quellcode:
type
  TMp3Grid = class(TStringGrid)
  private
    FBeforeEdit:string;
  protected
    procedure DragOver(Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); override; // sender entfernt
    procedure SetEditText(ACol, ARow: Integer;const Value: string); override; // sender entfernt
    procedure SelectCell(ACol, ARow: Integer;var CanSelect: Boolean); // sender auch entfernt aber override bringt hier immernoch fehler
  public
    constructor Create(AOwner:TComponent); override;
    procedure SelfSize;
  published // deklarationen entfernt
  end;
1. bleibt bestehen für den punkt "select cell"
2. hat sich nichts geändert.. frage steht weiterhin.
3. auch nichts geändert
neue frage:
4. wenn ich das package neu kompiliere wird dann auch immer sofort die kompo in delphi aktualisiert?

//edit:
5. komischer bug bei mir.. ab und zu wenn die delphi kontexthilfe aufgerufen wird, wird irgendwie meine tastatur blockiert, sodass ich in delphi gar nichts mehr tippen kann.. nach einem delphi neustart gehts wieder... wie kann das sein?
  Mit Zitat antworten Zitat