ВБ6 - Прављење транспарентне форме

Програм у ВБ6 или Висуал Басиц 6 се може користити да направи транспарентан облик у ВБ6 . Потребно је познавање програмских концепата и језика као што је Висуал Басиц, за писање програма у ВБ6. Основно знање о потпрограмима, иф-елсе петљама и Висуал Басиц функцијама неопходно је за писање програма у ВБ6. Програм за израду форме транспарентног у ВБ6 може се написати помоћу функција ВБ6 као што је функција СетЛаиередВиндовАттрибутес и операција бита, у корисничком потпрограму. Овај кориснички дефинисани потпрограм ће се звати догађај обрасца, зависно од тога када се образац учитава.

Почетак

Ево кратког примера како направити образац транспарентан у Висуал Басицу.

Напомена: Палета боја мора бити укључена да би ово функционисало.

У модулу

 Функција приватног декларисања ГетВиндовЛонг Либ "усер32" Алиас "ГетВиндовЛонгА" (БиВал хВнд Лонг, БиВал нИндек Лонг)

Привате Децларе Функција СетВиндовЛонг Либ "усер32" Алиас "СетВиндовЛонгА" (БиВал хВнд Лонг, БиВал нИндек Лонг, БиВал двНевЛонг Лонг)

Привате Децларе Функција СетЛаиередВиндовАттрибутес Либ "усер32" (БиВал хВнд Ас Лонг, БиВал црКеи ас Лонг, БиВал бДефаут Ас Бите, БиВал двФлагс Ас Лонг)

Привате Цонст ГВЛ_ЕКССТИЛЕ Ас Лонг = (-20)

Привате Цонст ЛВА_ЦОЛОРКЕИ Ас Лонг = & Х1

Привате Цонст ЛВА_Дефаут Ас Лонг = & Х2

Привате Цонст ВС_ЕКС_ЛАИЕРЕД Ас Лонг = & Х80000

'

Јавна функција транспарентности (БиВал хВнд као дуго, опционално БиВал Цол као дуго = вбБлацк, _

Опционо БиВал ПцТрансп Ас Бите = 255, Опционо БиВал ТрМоде као Боолеан = Труе

'Повратак: Истина ако нема грешке.

хВнд: хВнд од прозора да направите транспарентан

Цол: Цолор да буде транспарентан ако ТрМоде = Фалсе

'ПцТрансп: 0 А 255 >> 0 = транспарентно -: - 255 = Опакуе

Дим ДисплаиСтиле Ас Лонг

Он Еррор ГоТо Екит

ВоирСтиле = ГетВиндовЛонг (хВнд, ГВЛ_ЕКССТИЛЕ)

Ако је ДисплаиСтиле (ДисплаиСтиле или ВС_ЕКС_ЛАИЕРЕД) Затим

ДисплаиСтиле = (ДисплаиСтиле или ВС_ЕКС_ЛАИЕРЕД)

Позови СетВиндовЛонг (хВнд, ГВЛ_ЕКССТИЛЕ, ДисплаиСтиле)

Енд Иф

Транспарентност = (СетЛаиередВиндовАттрибутес (хВнд, Цол, ПцТрансп, ИИф (ТрМоде, ЛВА_ЦОЛОРКЕИ Или ЛВА_Дефаут, ЛВА_ЦОЛОРКЕИ))

Излаз:

Ако није Ерр.Нумбер = 0 Затим Ерр.Цлеар

Енд Фунцтион

Јавна субактивна транспарентност (М форма, д као логичка, Ф као логичка,

Т_Транспаренци Ас Интегер, Опционална боја као дуга)

Дим Б Боолеан

Ако д и Ф онда

'Боја (овде боја позадине облика) постаје транспарентна

'по вредности Т_Транспаренци

Б = Транспарентност (М.хВнд, Цолор, Т_Транспаренци, Фалсе)

ЕлсеИф д Тхен

'Чини форму, укључујући све компоненте, транспарентном

'по вредности Т_Транспаренци

Б = Транспарентност (М.хВнд, 0, Т_Транспаренци, Труе)

Елсе

'Враћа облик непрозиран.

Б = Транспарентност (М.хВнд,, 255, Труе)

Енд Иф

Енд Суб

Како се користи у облику

 Привате Суб Форм_Лоад ()

Дим и Ас Интегер

Ек: све транспарентно у односу 140/255

'АцтивеТранспаренци Ме, Труе, Фалсе, 140, Ме.БацкЦолор

Примјер: Облик прозирне, видљиве компоненте у омјеру 140/255

'АцтивеТранспаренци Ме, Труе, Труе, 140, Ме.БацкЦолор

'Пример приказује деградацију транспарентности форме

АцтивеТранспаренци Ме, Труе, Фалсе, 0

Ме.Схов

За и = 0 до 255 Корак 3

АцтивеТранспаренци Ме, Труе, Фалсе, и

Ме.Рефресх

Затим сам

Енд Суб

Претходни Чланак Sledeći Чланак

Топ Савети