Главная страница
    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.045 c
1-1173865091
stud
2007-03-14 12:38
2007.05.13
runtime error 217 at


3-1172238690
Tor
2007-02-23 16:51
2007.05.13
Открытая транзакция


2-1177431752
Aen Seidhe
2007-04-24 20:22
2007.05.13
Разные цвета текста


4-1166094492
niko
2006-12-14 14:08
2007.05.13
Создание окна в потоке с помощью ф-й WINAPI (в dll)


2-1177331483
snakecatcher
2007-04-23 16:31
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский