Einzelnen Beitrag anzeigen

Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#5

AW: Buttonname über popupmenü ändern

  Alt 3. Dez 2013, 00:04
Hallo,

spendier doch den Buttons, die in Frage kommen - also umbenannt werden sollen - ein OnContextPopup; dort speicherst Du Dir eine Referenz auf den Button, der umbenannt werden soll und im OnRenameTheButton änderst Du die Caption der gemerkten Referenz. Also z. B. so:
Delphi-Quellcode:
  TForm1 = class (TForm)
    Button1 : TButton;
    Button2 : TButton;
    Button3 : TButton;
    Button4 : TButton;
    PopupMenu1 : TPopupMenu;
    RenameButton : TMenuItem;
  private
    FButtonToRename : TButton;
    procedure RenameButtonContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean);
  end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Button1.PopupMenu := PopupMenu1; // oder im OI zuweisen

  Button1.OnContextPopup := ButtonContextPopup; // oder über den OI zuweisen

  FButtonToRename := nil
end;

procedure TForm1.RenameButtonClick(Sender: TObject);
begin
  if Assigned (FButtonToRename) then
    FButtonToRename.Caption := 'Some Caption'
end;

procedure TForm1.ButtonToRenameContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean);
begin
  FButtonToRename := TButton (Sender)
end;
Gruß
Volker Zeller
  Mit Zitat antworten Zitat