![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Задание 1. 1. Установите на форму компонент — индикатор процесса CGauge,из вкладки компонентов Samples,которыйпозволяет следить визуально за состоянием любого
1. Установите на форму компонент — индикатор процесса CGauge, из вкладки компонентов Samples, которыйпозволяет следить визуально за состоянием любого запущенного нами процесса или действия: 2. C помощью свойства — BackColor -> clMoneyGreen, можно задать и настроить предпочтительный цвет для данного компонента Cgauge, вместо стандартного белого - BackColor-> clWhite: 3. Добавьте на форму нашего приложения несколько новых компонентов (из вкладки Standard - Label, из вкладки Additional - SpeedBotton) и заполним необходимые их свойства (см. Рис.2). Рис.2 Размещение компонентов на форме 4. Надписи на кнопках (SpeedBotton) и метках (Label), могут быть любыми и задаются с помощью свойств этих компонентов — Caption, а размер букв и шрифт устанавливается с помощью свойства — Font. 5. Устанавливая для нужных компонентов SpeedBotton свойство GroupIndex в число отличное от нуля (например в единицу) и свойство AllowAllUp в True, получатся кнопки с эффектом нажатия до определенного момента пока снова не будут нажаты, при этом получается эффект противоположный нажатию кнопки. Так как, в нашем случае, кнопки с направлениями движения (Вперед, Назад, Влево, Вправо) имеют одно и тоже значение свойства GroupIndex=1, то при нажатии на любую из кнопок движения предыдущая кнопка возвращается в исходное положение. А вот кнопку с надписью — Стоп, наоборот не будем включать ни в группу кнопок движения, ни изменять выше перечисленные свойства для кнопок. Вот для нее мы опишем действия, которые она должна сделать при однократном нажатии. Для этого в Окне формы нужно два раза левой кнопкой мышки щелкнуть, по кнопке с надписью — Стоп (SpeedButton2), при этом автоматически среда быстрой визуальной разработки фирмы создаст в файле.cpp, обработчик событий при нажатии на кнопку — SpeedButton2Click, который при первом вызове всегда пустой. 6. Отменяем действия кнопок движения переводя их в исходное состояние. void __fastcall TForm1:: SpeedButton2Click(TObject *Sender) { if(Form1-> SpeedButton4-> Down==true) Form1-> SpeedButton4-> Down=false; if(Form1-> SpeedButton5-> Down==true) Form1-> SpeedButton5-> Down=false; if(Form1-> SpeedButton1-> Down==true) Form1-> SpeedButton1-> Down=false; if(Form1-> SpeedButton3-> Down==true) Form1-> SpeedButton3-> Down=false; } Программный код теперь будет выглядеть следующим образом: void __fastcall TForm1:: SpeedButton2Click(TObject *Sender) { if(Form1-> SpeedButton4-> Down==true) Form1-> SpeedButton4-> Down=false; if(Form1-> SpeedButton5-> Down==true) Form1-> SpeedButton5-> Down=false; if(Form1-> SpeedButton1-> Down==true) Form1-> SpeedButton1-> Down=false; if(Form1-> SpeedButton3-> Down==true) Form1-> SpeedButton3-> Down=false; Label1-> Caption=" Информация"; } void __fastcall TForm1:: SpeedButton4Click(TObject *Sender) { Label1-> Caption=" Информация"; } void __fastcall TForm1:: SpeedButton5Click(TObject *Sender) { Label1-> Caption=" Информация"; } void __fastcall TForm1:: SpeedButton1Click(TObject *Sender) { Label1-> Caption=" Информация"; } void __fastcall TForm1:: SpeedButton3Click(TObject *Sender) { Label1-> Caption=" Информация"; } 7. Теперь разберемся с последним компонентом - индикатором процесса CGauge, который мы пока не задействовали в нашем приложении. Для наглядности работы данного компонента в обработчик события -SpeedButton2Click, добавим следующее: void __fastcall TForm1:: SpeedButton2Click(TObject *Sender) { Form1-> CGauge1-> MaxValue=100; Form1-> CGauge1-> Progress=0; for(char g=0; g< =100; g++) { Form1-> CGauge1-> Progress=g; Sleep(25); // Делаем задержку } Form1-> CGauge1-> Progress=0; }
|