|
Набор "одинаковых" форм.
|
|||
---|---|---|---|
#18+
Хочу понять логику "уведомлений в трей". Дмитрий77Вопрос #3: Сообщение в трей типа. Вам звонит абонент такой-то. Простой вариант: "Щелкните по Notification чтобы ответить на вызов". А как сделать вожможность выбора 2 варианта : ответить/сбросить вызов От Ballon Notification я здесь отказался по следующим причинам: 1) щелчком могу реализовать только "ответить на вызов", 2 других логичных варианта не реализуемы 2) Задница с таймаутом (особенно на вистообразных) - дефолтные 9 секунд явно не катит 3) Такое сообщение надо "вклинивать" в очередь, т.к. приоритет выше, естественно надо усложнять алгоритм и тд Придумал использовать формы в духе Notification area flyouts с некоторой отсебятиной, т.е. без WM_POPUP -непотопляемое с фиксированными размерами и положением окно сделанное из обычной VB6 Form1, кот. закрывается либо командой приложения, либо при нажатии одного из 3-х вариантов в окне (кнопка + 2 syslink). С самой формой в целом справился. Вопрос. Форм этих может быть несколько - несколько одновременных входящих вызовов (по текущей логике приложения не более 3-х). Каждая форма "привязана" к "линии". Позиционировать предполагаю я их над треем если несколько то одна над другой (при нижней панели задач). Я вот думаю: добавить в проект три одинаковых или выдумывать динамические коллекции, массивы из форм и прочую ересь. С одной стороны лепить 3 одинаковых (а м.б. их потом больше будет) как то неохота. Не то чтоб там очень сложно, но стилизация под Aero Style Classes, Parts, and States - FLYOUT_LINKAREA, FLYOUT_WINDOW , потом сабклассинги на предмет Syslink и WINDOWPOS -т.е. код есть. С другой стороны попытка начать мыслить в духе: Код: vbnet 1. 2. 3. 4.
сразу тупо привела к отказу сабклассинга (естественно, модуль и ф-ции WinProc то общие для всех "экземпляров"). Вот я и думаю 1) Заморачиваться с массовостью или 2) Ну его, нарисуем 3 одинаковых со своими одинаковыми сабклассингами, логически привязанных к "своей линии". Ну где позиционировать очередную форму в завис. от того что уже показывается на экране, думаю в этом случае разберусь. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2013, 00:01 |
|
Набор "одинаковых" форм.
|
|||
---|---|---|---|
#18+
Остановился на варианте: Дмитрий772) Ну его, нарисуем 3 одинаковых со своими одинаковыми сабклассингами, логически привязанных к "своей линии". Ну где позиционировать очередную форму в завис. от того что уже показывается на экране, думаю в этом случае разберусь. Думаю проще сделать три копии рабочего логически понятного кода, чем потом разбираться с одним глючным. Для позиционирования придумал массив (0 to 2) as Boolean При Load форма вычисляет первый false и метит его как true, при этом делается сдвиг на величину Form.Height * Index массива При Unload форма ставит false вместо true для своего текущего Index ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 01:39 |
|
|
start [/forum/topic.php?fid=60&tid=2156910]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 283ms |
total: | 429ms |
0 / 0 |