Читать книгу Delphi. Трюки и эффекты - Александр Чиртик - Страница 3
Глава 1
Окна
Оглавление• Привлечение внимания к приложению
• Окно приложения
• Полупрозрачные окна
• Окна и кнопки нестандартной формы
• Немного о перемещении окон
• Масштабирование окон
• Добавление пункта в системное меню окна
• Отображение формы поверх других окон
Было решено начать книгу именно с необычных приемов использования оконного интерфейса. Причиной стало то, что при работе с операционной системой Windows мы видим окна постоянно и везде (отсюда, собственно, и название). Речь идет не только об окнах приложений, сообщений, свойств – понятие о таких окнах есть у любого начинающего пользователя Windows.
В своих собственных окнах рисуются и элементы управления (текстовые поля, панели инструментов, таблицы, полосы прокрутки, раскрывающиеся списки и т. д.). Взгляните на интерфейс, например, Microsoft Word. Здесь вы увидите, что даже содержимое документа находится в своем собственном окне с полосами прокрутки (правда, это не обязательно элемент управления). Окна элементов управления отличаются от «самостоятельных» окон (упрощенно) отсутствием стиля, позволяющего им иметь заголовок, а также тем, что являются дочерними по отношению к другим окнам. Понимание этого момента является важным, так как на нем основана часть примеров данной главы.
Рассматриваемые примеры частично используют средства, которые предусмотрены в Borland Delphi, а частично – возможности «чистого» API (см. гл. 2). Практически все API-функции работы с окнами требуют задания параметра типа HWND – дескриптора окна. Это уникальное значение, идентифицирующее каждое существующее в текущем сеансе Windows окно. В Delphi дескриптор окна формы и элемента управления хранится в параметре Handle соответствующего объекта.
Нужно также уточнить, что в этой главе термины «окно» и «форма» употребляются как синонимы, когда речь идет о форме (в том смысле, который это слово имеет при программировании с использованием Delphi). Когда же речь идет об элементах управления, то так и говорится: окно элемента управления.