Вниз
Скачать: CL | DM;

Как вернуть прямоугольную форму из непрямоугольной?   Найти похожие ветки 

← →
Dmitry_04   (2005-02-08 18:12) [0]

Как вернуть прямоугольную форму из непрямоугольной? У меня вид формы создается функцией "SetWindowRgn".


← →
Defunct ©   (2005-02-08 18:32) [1]

Не создавать с помощью SetWindowRgn вернется к прямоугольному виду.


← →
begin...end ©   (2005-02-08 18:35) [2]

> Dmitry_04   (08.02.05 18:12)

Вероятно, перед вызовом SetWindowRgn можно сохранить старый регион, получив его с помощью функции GetWindowRgn.


← →
VMcL ©   (2005-02-08 19:03) [3]

+ CreateRectRgn()


← →
Dmitry_04   (2005-02-08 19:57) [4]

сделал я через GetWindowRgn вроде все получилось... но я заметил вот что: у меня WinXP а там окна по углам закругленные и прозрачные, а тут они черные...

VMcL А к чему CreateRectRgn прибавлять? Я что-то не очень понял...


← →
Dmitry_04   (2005-02-08 20:30) [5]

может есть какянибудь функция перерисовывания формы?


← →
Юрий Зотов ©   (2005-02-08 21:09) [6]

ИМХО, сохранить старый регион может и не получиться. Регионами окон владеет система, поэтому после вызова SetWindowRgn старый регион может быть уничтожен и его запомненный хэндл окажется недействителен (если только система не ведет счетчики пользователей оконных регионов).

Надежнее создавать новый регион и вновь назначать его окну.


← →
Dmitry_04   (2005-02-08 21:16) [7]

Юрий Зотов Вы имеете ввиду так?

CreateRectRgn(0, 0, Form1.ClientWidth, Form1.ClientHeight);


← →
Юрий Зотов ©   (2005-02-08 21:33) [8]

> Dmitry_04   (08.02.05 21:16) [7]

Только без Client. Это же будет регион ВСЕГО окна, а не его клиентской области.


← →
nnm   (2005-02-09 00:05) [9]

А можно ли это сделать покрасивее? Т.е. например чтобы форма иссчезла и появилась в новом обличии или плавно изменилась из одной в другую...
Я тут попробовал сделать на иссчезновение и появление:

AnimateWindow (Form1.Handle, 50, AW_BLEND or AW_HIDE);

...//изменение

AnimateWindow (Form1.Handle, 50, AW_BLEND);

Только это как-то не очень... форма изчезает, а появляется не измененной... а потом как появится быстро перерисовывается...


← →
Dmitry_04   (2005-02-09 07:42) [10]

Я бы тоже так хотел... чтобы форма менялась "плавно"... Подскажите как это сделать.


← →
Dmitry_04   (2005-02-09 14:17) [11]

???



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.032 c
14-1107994121
iZEN
2005-02-10 03:08
2005.02.27
Microsoft Expression


1-1108144299
Gear
2005-02-11 20:51
2005.02.27
Как правильно удалить родной Indy из Delphi 7?


1-1108415035
Kubic
2005-02-15 00:03
2005.02.27
Иконка в DrawGrid


4-1105397977
GanibalLector
2005-01-11 01:59
2005.02.27
GetOpenFileName/GetSaveFileName


3-1106921457
denis24
2005-01-28 17:10
2005.02.27
Как побороть FIBDataset




   Наверх