Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: 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 вся ветка

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.039 c
1-1108477450
Pyro Sun
2005-02-15 17:24
2005.02.27
Различия Delphi Personal и Professional


9-1098877316
Soroka
2004-10-27 15:41
2005.02.27
Генерация лабиринтов


1-1108542363
Игорь нтк
2005-02-16 11:26
2005.02.27
как сохранить выбор кнопки из radiogroup


1-1107938331
hgd
2005-02-09 11:38
2005.02.27
Перевод миллисекунд в часы


1-1107877962
_student
2005-02-08 18:52
2005.02.27
Как работать с Compound Document (он же OLE Structured Storage).