|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
09.04.2008, 23:21 | #1 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Добрый день!
Как создать плавно сворачивающийся и раскрывающийся контрол, например панель. Или если можно ссылку на пример. Всем спасибо! Я попробывал такой код, но он очень некоррекно разворачивает и сворачивет (Panel1.Height = 127, при создании формы устанавливаю Timer1.Enabled := False; Timer1.Interval := 250 или 1000 - эффект все равно очень плохой зрительно!): procedure TForm1.Buttom1Click(Sender: TObject); begin Timer1.Enabled := True; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if Button1.ImageIndex = 7 then begin Panel1.Height := Panel1.Height + 5; if Panel1.Height > 127 then Timer1.Enabled := False; end else begin Panel1.Height := Panel1.Height - 5; if Panel1.Height < 1 then Timer1.Enabled := False; end; end; Подскажите, пожалуйста, лучшее решение может через WinAPI. Всем спасибо! Последний раз редактировалось Stilet; 10.04.2008 в 08:53. |
10.04.2008, 00:11 | #2 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Просто прибавлять по пять пикселей - это очень некрасивое решение, скажем так. Если окно будет увеличиваться большими скачками, буквально за 2-4 раза, всё будет намного красивее. Проверьте, не поленитесь.
|
10.04.2008, 00:19 | #3 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Все равно такой код работает скачками. Нужен код плавного разворачивания и сворачивания контрола!
Спасибо не поленился и попробывал :-)
Все равно такой код работает скачками. Нужен код плавного разворачивания и сворачивания контрола! Есть еще какие-то мнения на эту тему? Всем спасибо! |
10.04.2008, 09:01 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Ну в принципе ничего нового не скажу, но вот если счелкнуть в этом коде по кнопке она плавно свернется:
Код:
I'm learning to live...
|
10.04.2008, 09:28 | #5 |
Пользователь
Регистрация: 04.11.2007
Сообщений: 64
|
вот такая штука(только на примере формы)
получается эффект торможения к конечной точке: form4.Top:=form4.Top-form4.Top div 10; это всё в таймер.....и скорость торможения зависит от числа после div. да...и желательно поставить условие типа если форм.топ < 15(например), то форм.топ:=0; Последний раз редактировалось Романнн; 10.04.2008 в 09:30. |
10.04.2008, 10:22 | #6 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Stilet - спасибо за пример, но он не компилируется.
Stilet - спасибо за пример, но он не компилируется. Ошибки в строке:
CreateThread(nil,0,@t,0,CREATE_NEW, ti); Что здесь не так? Спасибо! |
10.04.2008, 10:53 | #7 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Опа. еще один счастливый обладатель немого компилятора. )
I'm learning to live...
|
10.04.2008, 11:01 | #8 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Ошибка: E2036 Variable required
Извините, в каком плане "рнемого компилятора". Ошибка: E2036 Variable required на строке функции в процедуре кнопки. Спасибо.
|
10.04.2008, 11:09 | #9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Вот другое дело.
хм... На Д6 все путем... Какая Делфа?
I'm learning to live...
|
10.04.2008, 11:27 | #10 |
Форумчанин
Регистрация: 05.04.2008
Сообщений: 244
|
Ошибка на codegear rad studio delphi 2007 for win32.
Нашел вот такой вариат, но он ничего не хочет делать с панелью. Спасибо Извините пример такой: AnimateWindow(Panel1.Handle, 200, AW_VER_POSITIVE or AW_HOR_POSITIVE); Спасибо. Последний раз редактировалось Stilet; 10.04.2008 в 11:42. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дано четырехзначное число, заданное в символьном виде, например, '1954'. Напечатать его текстом, например | gred | Помощь студентам | 13 | 31.03.2008 22:24 |
Внедрить контрол в FlexGrid | beryllium | Общие вопросы .NET | 0 | 21.02.2008 01:09 |
Плавно выпадающее меню для Mozilla Firefox | мЕхаил =) | JavaScript, Ajax | 6 | 22.12.2007 23:46 |
Как создать программу-панель (как панель Msoffice), чтобы была поверх всех окон | Romanbl4 | Общие вопросы Delphi | 6 | 27.06.2007 17:23 |
Как плавно поменять цвет формы | гера | Помощь студентам | 1 | 20.04.2007 15:35 |