Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 7
Всего онлайн: 7
Зарегистрировано юзеров: 5860
Комментариев на сайте: 626
Новый юзер: Craigwoult



Последние комментарии
c
s1t1n прокомментировал "Урок 9 - Экспорт .3DS модели из 3DS max 2009 в OpenGL":
Отлично.
niaz-gtn прокомментировал "Урок 71 - Работа с сжатыми файлами":
7z.dll - приложите.



Мы в соцсетях
c
Delphi
Урок 39 - Панель быстрого запуска (часть 1/2)

   Начинаем создавать панельку быстрого запуска, в этом уроке мы сделаем движение (скрытие\показ).

   Панелька будет выполнять простые функции: прятаться за границу экрана и показывается, запускать приложения, добавление приложений будет осуществляться способом "Drag-and-drop". В этом уроке мы сделаем только движение панели.

Стартуем!!!

Стартуем


   Наша панель будет располагаться слева, у края монитора и иметь небольшие размеры. Кидаем на форму компонент Panel и для теста Label, у Panel свойство Align установим на alClient. Выдвижение будет происходить при первом клике на панель, а при повторном клике, панель спрячется обратно. Поэтому создаем глобальную переменную Showed: boolean;, благодаря ей мы будем знать в каком состоянии панель, затем кликаем 2 раза Panel и пишем код:
procedure TForm1.Panel1Click(Sender: TObject);
begin
  if Showed = false then // Если статут "Спрятана" 
  begin
    Label1.Caption:='<<< True <<<';
    Showed:= True;  // Делаем статус "Показана"
  end
  else // Иначе
  begin
    Label1.Caption:='>>> False >>>';
    Showed:= False; // Делаем статус "Спрятана"
  end;
end;
   Проверим:

Показана
Жмем первый раз
Спрятана
Жмем второй раз


   Теперь сделаем движение панели. Создаем глобальную переменную S: integer; , это для того чтобы панель не перемещалась вечно, а останавливалась, вытаскиваем таймер, интервал зададим 10 и в обработчике события пишем код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if S = 15 then // Если пройдённый путь равен 15
  begin
    Timer1.Enabled:= False; // Выключаемся
  end
  else  // Иначе
  begin
    S:= S+1; // Увеличиваем путь на 1
    Form1.Left:= Form1.Left - 10; // Двигаем панель
  end;
end;
   Это движение в одну сторону, для движения назад нам понадобится еще один таймер, кидаем его на форму, назначаем интервал 10 и в обработчике пишем код:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
  if S = 0 then // Если пройдённый путь равен 0
  begin
    Timer2.Enabled:= False; // Выключаемся
  end
  else  // Иначе
  begin
    S:= S-1; // Уменьшаем путь на 1
    Form1.Left:= Form1.Left + 10; // Двигаем панель
  end;
end;
   Теперь вместо присвоения текста Label1 на нужно запускать таймера, модифицируем обработчик OnClick Panel:
procedure TForm1.Panel1Click(Sender: TObject);
begin
  if Showed = false then // Если статут "Спрятана"
  begin
    Timer1.Enabled:= True; // Запускаем таймер показа
    Showed:= True; // Делаем статус "Показана"
  end
  else
  begin
    Timer2.Enabled:= True; // Запускаем таймер скрытия
    Showed:= False; // Делаем статус "Спрятана"
  end;
end;
   Вот и все, в следующем уроке мы поработаем над интерфейсом.

Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 16 Мая 2013
Просмотров: 7580

Урок 38 - Запись рабочего стола Урок 40 - Панель быстрого запуска (часть 2/2)

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавил: Dev199 [Новичок] Дата: 2015-12-31