Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2009, 19:16   #11
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
Нормательно оно фунциклирует, просто не всегда удобно )
Я просто никогда не могу точно предсказать, какой будет результат... Обычно совсем отключаю его и прописываю зависимости от размера формы вручную...

Цитата:
У вас делфи какой версии?
Можете скинуть исходник.
"Делфи 7" у меня...
Чуть изменил строчку
Код:
TransparentBlt(Canvas.Handle, 0, 0, 100, Height, GetDC(0), Left, Top, 100, Height, 100);
на
Код:
TransparentBlt(Canvas.Handle, 0, 0, 100, Height, GetDC(0), Left+100, Top, 100, Height, 100);
На форме стало целых две кнопки... Но нажимается тока "настоящая"...

Поэкспериментировал ещё - кажется
Цитата:
//GetDC(0) - HDC экрана за формой
у меня не "за формой", а вместе с формой...
Вложение "TranspBlt.zip"...

Цитата:
Да, пробовал так но не очень удобно. Спасибо.
Я вот так, бывает, делаю (вложение "Новая Папка.zip")...
Вложения
Тип файла: zip Новая Папка.zip (228.3 Кб, 9 просмотров)
Тип файла: zip TranspBlt.zip (202.4 Кб, 9 просмотров)
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 16.06.2009, 23:16   #12
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Ай, да, забыл... TransparentColor у формы выставите в true
И в onCreate пропишите например:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
 TransparentColorValue := clRed;
end;
Чтобы бордюр и надпись кнопки небыли прозрачными)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 17.06.2009, 00:26   #13
-HunteR-
Форумчанин
 
Аватар для -HunteR-
 
Регистрация: 04.11.2007
Сообщений: 117
По умолчанию

А зачем заморачиваться? просто скрываемую часть создать на одной панели, а нескрываемую на другой и при нажатии скрывать скрываемую, а нескрываемую двигать на left=0 и width у формы тоже уменьшить
Перед тем, как выложить код, я его всегда проверяю.
Если помог - тыкни на на весы слева, под аватарой.
-HunteR- вне форума Ответить с цитированием
Старый 17.06.2009, 00:49   #14
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Потрясающе.....

Как раз недавно была тема, как рисовать на форме то что под ней, но там кажется так ничего и не решилось...
Только при перетаскивании дёргается немного - никак нельзя пофиксить..?)

gakuseix, я придумал... Только там будет глюк со стилем оформления формы...
Код:
Procedure TForm1.Button1Click(Sender: TObject);
Var R1, R2: HRGN;
Begin
R1:=CreateRectRgn(0, 0, 200, Form1.Height);
R2:=CreateRectRgn(0, 0, Form1.Width, Form1.Height);
CombineRgn(R1, R1, R2, RGN_XOR);
SetWindowRgn(Form1.Handle, R1, True);
End;

Procedure TForm1.Button2Click(Sender: TObject);
Var R1: HRGN;
Begin
R1:=CreateRectRgn(0, 0, Form1.Width, Form1.Height);
SetWindowRgn(Form1.Handle, R1, True);
End;
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 17.06.2009, 01:17   #15
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Цитата:
Только при перетаскивании дёргается немного - никак нельзя пофиксить..?)
А вот этого я не знаю... Про этот "эффект" я и говорил)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 17.06.2009, 01:18   #16
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Вроде один раз нажал... Два поста создалось...
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 18.06.2009, 19:02   #17
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

jоформляем форму в виде двух панелей
leftpanel левая (отрезаемая) часть
leftpanel.allign:=alleft

basepanel основная панель
basepanel.allign:=alclient

при нажатии кнопки скрыть делаем
w:=basepanel.width;
leftpanel.visible:=false;
form.clientwidth:=w;
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить размер формы Dr.Badnezz Общие вопросы Delphi 1 28.01.2009 20:51
Изменить размер объекта Comment Васкинс Microsoft Office Excel 4 16.07.2008 14:11
изменить размер кнопки badfilin JavaScript, Ajax 2 12.04.2008 17:04
Как изменить размер Видео PilGrim Компоненты Delphi 1 19.11.2007 23:03
Как изменить размер поля БД Алёна БД в Delphi 5 07.05.2007 10:06