SuggestEdit (C++)
From RAD Studio Code Examples
Language:
Description
This example demostrates the use of a buttoned edit. The edit box is configured to have both right and left buttons enabled. The right button adds the current text into a menu and the left button displays that menu. Clicking a menu item will enter the text back to the edit.
Code
void __fastcall TMainForm::edtSuggestRightButtonClick(TObject *Sender) { TMenuItem* item; TButtonedEdit* edit; TPopupMenu* menu; /* Retrieve the edit and the menu. */ edit = dynamic_cast<TButtonedEdit*>(Sender); menu = edit->LeftButton->DropDownMenu; /* Check if the text is nonempty and is not already added to the menu. */ if (edit->Text == "") return; /* Also note that you need to strip the hot key, since the menu adds the & character automatically */ for (int i = 0; i < menu->Items->Count; i++) if (StripHotkey(menu->Items[i].Caption) == edit->Text) return; /* Create a new menu item and add it to the menu. */ item = new TMenuItem(menu); item->Caption = edit->Text; item->OnClick = MenuItemClick; menu->Items->Add(item); } void __fastcall TMainForm::MenuItemClick(TObject *Sender) { /* When a menu item is selected, add its caption to the edit box. */ edtSuggest->Text = StripHotkey(dynamic_cast<TMenuItem*>(Sender)->Caption); }
Uses
- Vcl.Menus.TMenuItem ( fr | de | ja )
- Vcl.ExtCtrls.TEditButton.DropDownMenu ( fr | de | ja )
- Vcl.Menus.StripHotkey ( fr | de | ja )