Спливаючі вікна, блог delphi-програміста

Привіт, в даній статті хотів би розповісти як я реалізував в одному своєму проекті спливаюче вікно. Так я знаю є досить компонентів, які дозволяють зробити спливаюче вікно, а також навести красу в цьому, але мені не треба було наводити красу, звичайне вікно, яке буде інформувати користувачів про щось. Може це метод, який робив я не зовсім правильний, але я якось так реалізував це. Використовував я в першу чергу TTimer. ну а решта тільки на таймері я поворушив вікно, звичайно замість таймера можна було використовувати цикл, або щось ще, але мені чомусь сподобався він. На формі у мене

Ну і звичайно треба налаштувати якось більш-менш красиво нашу форму, щоб було схоже на красиве вікно, можна звичайно надалі свій дизайн придумати, намалювати і прикрасити, але поки що зробимо її трохи прозорою і просто змінимо стиль нашої форми, крім цього, ми на нашому TLabel напишемо що-небудь, наприклад, «Hello World» =).

Давайте поставимо властивість форми AlphBlend в True. а AlphaValue в 180 встановимо. У властивості Caption приберемо напис, а у властивості BorderStyle встановимо в bsToolWindow. встановимо потрібний розмір нашої форми в потрібний, а потім на подію OnShow необхідно нам написати початкове встановлення поява вікна, по ідеї все спливаючі вікна з'являються поруч з треєм. Але нам необхідно, щоб наше вікно спочатку з'явилося нижче панелі завдань, а через панелі задач потім вже буде з'являтися наше вікно - спливати, тож на подію OnShow написаний наступний код

Таким чином у нас вікно з'явитися нижче панелі задач і якраз в правій стороні екрану і таким чином буде з'являтися вгору. Тепер нам необхідно зробити нібито рух вікна, тобто ефект його появи. Для цього у властивості TTimer - Interval встановимо в 1 і на подія OnTimer напишемо наступний код

Схожі статті