Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Вниз

полупрозрачность   Найти похожие ветки 

 
dr_craigan   (2007-04-17 13:11) [0]

Плиз, кто знает помогите - уже месяц с полупрозрачностью мучаюсь. Короче, нужно сделать полупрозрачным один регион (или хотя бы прямоугольник). пробовал UpdateLayeredWindow и AlphaBlend, но не могу найти нужные параметры, чтобы было как надо. Если знаете, помогите.


 
dr_craigan   (2007-04-17 13:22) [1]

Да кстати, вся остальная форма должна быть нетронутой (компоненты должны быть видны)


 
Призрак в облаках   (2007-04-17 13:40) [2]

Как сделать прозрачное окно родными средствами Windows 2000 или ХР?
В Windows2000 есть для этого ф-я SetLayeredWindowAttributes, вот пример её использования:


unit Win2k;
interface
uses Graphics, Windows;

function SetLayeredWindowAttributes(
hwnd : HWND; // handle to the layered window
crKey : TColor; // specifies the color key
bAlpha : byte; // value for the blend function
dwFlags : DWORD // action
): BOOL; stdcall;

function SetLayeredWindowAttributes; external "user32.dll";
implementation

end.

program WinLayer;

uses
Windows, SysUtils,
Win2k in "Win2k.pas";

const
WS_EX_LAYERED= $80000;
LWA_COLORKEY = 1;
LWA_ALPHA = 2;

var
Hndl : THandle;
Transp : Byte;

begin
Writeln("Windows2000 Layer <- build by AK ->");
Writeln(" Usage: WINLAYER.EXE [window name] [Transp (0-255)]");
Writeln(" Example: WINLAYER "Calculator" 200");
Writeln;

if ParamCount <> 2 then exit;

Hndl := FindWindow(nil, PChar(ParamStr(1)));
Transp := StrToIntDef(ParamStr(2), 128);

if SetWindowLong(Hndl, GWL_EXSTYLE, GetWindowLong(Hndl, GWL_EXSTYLE) or WS_EX_LAYERED) = 0 then
Writeln("Error !");

if not SetLayeredWindowAttributes(Hndl, 0, Transp, LWA_ALPHA) then
// ^^^ степень прозрачности
// 0 - полная прозрачность
// 255 - полная непрозрачность
Writeln("Error !");
end.


Где взял не помню:(


 
dr_craigan   (2007-04-17 13:51) [3]

Понимаешь, мне надо чтоб как в висте - полупрозрачный регион, как там заголовок и другая муть, а SetLayeredWindowAttributes - переделывает всё окно.


 
dr_craigan   (2007-04-17 14:07) [4]

ау, проснитесь, разве никто не работал с графикой и дизайном своих прог


 
dr_craigan   (2007-04-19 12:40) [5]

Может кто знает, как фотошоп делали, или Висту, тогда подскажите


 
{RASkov}   (2007-04-19 12:58) [6]

> Может кто знает, как фотошоп делали, или Висту, тогда подскажите

Ага... в прошлом году всем форумом Висту лепили...


 
homm ©   (2007-04-19 13:32) [7]

> Может кто знает, как фотошоп делали,

А что, там где-то окна полупрозрачные?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
2-1176989057
allucard
2007-04-19 17:24
2007.05.13
Есть окно Form2, но его необходимо создать автоматически


15-1176649171
Почтальон
2007-04-15 18:59
2007.05.13
Международные посылки


2-1176980811
Romm
2007-04-19 15:06
2007.05.13
уничтожение активного окна


4-1158831860
Jolik
2006-09-21 13:44
2007.05.13
Integer-переменные и многозадачность...


15-1176693141
DelphiN!
2007-04-16 07:12
2007.05.13
Спам о заработке в Интернете





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский