Einzelnen Beitrag anzeigen

Benutzerbild von Nalincah
Nalincah

Registriert seit: 18. Jul 2003
898 Beiträge
 
Delphi 6 Professional
 
#3

Re: PopupMenu NUR bei rechtsklick auf TabSheet.Titel ausklap

  Alt 18. Dez 2003, 10:11
Danke. Das Problem ist nur:

Ich benutze das bei dynamisch erstellten Kompos und da hab ich mir das so gedacht:

Sheet[anzSQL].OnMouseUp := ShowPopupMenu(PageControlSQL,mbRight,[],Mouse.CursorPos.X,Mouse.CursorPos.Y); und dazu die Proc:

Delphi-Quellcode:
procedure TFrameDB.ShowPopupMenu(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const
  TCM_GETITEMRECT = $130A;
var
  i: Integer;
  r: TRect;
  p: TPoint;
begin
  with (Sender as TPageControl) do
  begin
    for i := 0 to PageCount - 1 do
    begin
      Perform(TCM_GETITEMRECT, i, LPARAM(@r));
      if PtInRect(r, Point(X, Y)) then
      begin
        if i = ActivePage.PageIndex then
        begin
          p := ClientToScreen(Point(X, Y));
          PopupSQL.Popup(p.X, p.Y);
          Exit;
        end; // if i = ActivePage.PageIndex then
      end; // if PtInRect(r, Point(X, Y)) then
    end; // for i := 0 to PageCount - 1 do
  end; // with (Sender as TPageControl) do
end;
Dann sagt der mir aber:

Code:
[Fehler] uFrame.pas(335): Inkompatible Typen: 'TMouseEvent' und 'procedure, untyped pointer or untyped parameter'
Das Versteh ich nicht, da ja

Delphi-Quellcode:
Mouse.CursorPos.X
Mouse.CursorPos.Y
vom Typ Integer ist und die Proc verlangt an der Stelle Integer
Sebastian
Ehemals bekannt als General2004
  Mit Zitat antworten Zitat