Лейблы в C++ Builder

01.01.2001

Лейблы в C++ Builder
Есть два лейбла: Label1 и Label2. При нажатии на любой из них они должны отправляться в функцию void A (TLabel*); Вопрос: откуда мне достать указатель на Label при нажатии на него для последующей его передачи в функцию?

  • в обработчике нажатия есть параметр sender, его надо передать в функцию А. а в функции надо сделать преобразование типов: ((TLabel *) Sender) и дальше уже обращаешься к нужным свойствам. например ((TLabel *) Sender)->Caption = "*". если эту строчку засунуть в обработчик, а обработчик повесить например на событие OnClick нескольких лабелей, то при щелчке по любой из них текст заменится на звездочку.
  • Просто назначь на событие OnClick нужного лейбла функцию, которая тебе необходима. Правой кнопкой мыши щелкни на элементе Label и выбери Properties (Свойства) там выбери закладку Events (События) и на событии OnClick() пиши нужный код (можешь вызывать в нем твою функцию. Имя элемента Label и есть указатель на нее.
  • не совсем понял задачу - зачем делать это через указатели. у лейбла как и у кнопки есть событие - Onclick - пощелчку. выбираете в свойствах элемента это событие и на него уже вешаете какие угодно функции.

Вас заинтересует