Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Прозрачная подсказка (ToolTip)

282
17 августа 2006 года
Bard
481 / / 26.02.2006
Как сделать прозрачной подсказку (ToolTip) , зная её хендл?
Подскажите кто знает, плизз! Мне надо ето применять в краасивущей проге :)

И заодно: как сделать прозрачным меню?
354
17 августа 2006 года
ШпиЁн
468 / / 19.02.2006
А стандартную связочку
 
Код:
SetWindowLong(hWnd,GWL_EXSTYLE, GetWindowLong(hWnd,GWL_EXSTYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(hWnd, RGB(0,0,0), alpha, LWA_ALPHA);

пробовал? :-))))
282
17 августа 2006 года
Bard
481 / / 26.02.2006
Ето я уже давно знаю. Етот код действует только на окна. На контролы и подсказки - ноль реакцыи :( Может я что-то не так делаю? Просто, у меня есть код, который делает меню прозрачным. НО я ни как не могу разобраться как он ето делает! В коде все очень запутано, ведь он делает не только ето, а и еще кучу всего!
354
17 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Ну дык выложи код сюда, может я разберуся :-)))
282
17 августа 2006 года
Bard
481 / / 26.02.2006
 
Код:
Dim hTip As Long
hTip = CreateTip()
Call SetWindowLong(hTip, GWL_EXSTYLE, GetWindowLong(hTip, GWL_EXSTYLE) Or WS_EX_LAYERED)
Call SetLayeredWindowAttributes(hTip, RGB(0, 0, 0), 70, 2)


Если вместо [FONT="Courier New"]CreateTip()[/FONT] поставить [FONT="Courier New"]Me.hWnd[/FONT] то форма станет прозрачной. А если подставить хендл подсказки, то ровно ничего не выходит :( Хоть [FONT="Courier New"]SetLayeredWindowAttributes[/FONT] возвращает 1
354
18 августа 2006 года
ШпиЁн
468 / / 19.02.2006
Что-то я ничего подобного в сети не нашел... да и в прогах такого не видел сопснааа...

Можно конечно создать прозрачный тултип - на самом деле это будет обычное окно, с регионами, без titlе bar'a и нужным образом расположенное... Используя регионы можно вообще любую форму окну придать... Если оч. нужно и кривизна метода не смущает - могу попробовать соорудить рабочий вариант...
8.9K
16 сентября 2006 года
Kap
77 / / 10.09.2006
А как же GDI+? Там же все необходимые для этого инструменты есть!

WCHAR kap[]=L"Hello, Kap!";
Graphics g(hdc);
g.SetPageUnit(UnitPixel);
RectF bounds(0,0,float(rc.right),float(rc.bottom));

LinearGradientBrush brush(bounds,Color(130,0,100,0),Color(255,0,0,0),
LinearGradientModeBackwardDiagonal);
StringFormat format;
format.SetAlignment(StringAlignmentCenter);
format.SetLineAlignment(StringAlignmentCenter);
Font font(L"Arial",48, FontStyleBold);

g.DrawString(kap,-1,&font,bounds,&format,&brush);


Вот. В color первая цифра- степень прозрачности. 255- непрозрачно вообще. Там у объекта g доступна еще огромная куча методов, в том числе и DrawImage и DrawPath, которыми можно нарисовать окно любой формы, и никокого мошенничества! Все чисто и красиво. И в 10 строчек.
282
16 сентября 2006 года
Bard
481 / / 26.02.2006
А на VB можна ?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог