Кент Рейсдорф. BORLAND C++BUILDER. Раздел 2
Кент Рейсдорф. BORLAND C++BUILDER. Страница 219
Обработка связанных с мышью событий имеет свои особенности. Если вам нужно обрабатывать только щелчки мышью на компоненте, то для этого вам достаточно отслеживать события OnClick. Если вас интересуют события OnMoiiseDown и OnMouseUp, вы должны знать, что вместе с этими событиями будет происходить и событие OnClick. Например, одиночный щелчок кнопкой мыши вызовет следующие события в указанном порядке: QnMouseDbwn 5 5::v;;i ;==5== =: |;^ . ■ :::. :
Qi^cii ск". • i: г
Dniyfou s е ирл;;
Аналогично, когда пользователь будет дважды щелкать мышью, то приложение будет получать большее количество событий, чем вы могли подумать. Когда на компоненте дважды щелкнут кнопкой, то будут происходить следующие события:
Поэтому я призываю вас к внимательности при обработке событий, связанных с одиночным и двойным щелчком на компоненте. Помните, что в случае двойного щелчка вы должны получить четыре события.
Множественные события происходят и при нажатии клавиш. Например, при нажатии клавиши в окне редактирования произойдут события OnKeyDown, OnKeyPress, OnChange и OnKeyUp.
Компакт-диск, прилагаемый к этой книге, содержит программу EventTst, которая демонстрирует множественные события при щелчках мышью и нажатии клавиш. Запустив: эту программу, вы увидите, к каким событиям приводят различные действия пользователя.
Сейчас мы приступим к более подробному рассмотрению отдельных компонентов VCL. Но сначала я хочу познакомить вас с одним классом, который используется некоторыми компонентами.
Класс TStrings — это класс VCL, который используется для работы с массивами строк. Некоторые компоненты VCL используют экземпляры класса TStrings для работы со своими данными (обычно текстовыми). Например, в 7-й день вы использовали класс TStrings при создании приложения Scratch- Pad. Вы скажете, что не использовали в этой программе класс TStrings? И будете неправы — вы просто не знали об этом. Вспомните, что при сохранении и загрузке файлов мы использовали строки типа: