Форум — Ответы ( К темам )
? | Dracula: Два события на одну кнопку... (06-04-2003 22:53:53) |
Здравствуйте! Помогите пожалуйста с одним вопросом. Как мне например на одну кнопку навесить два события. Хочу сделать кнопку при нажатии на которую выдвигается лоток CD-ROM'а, меняется на ней Caption, а при повторном нажатии задвигается CD. Какими функциями осуществлять открытие/закрытие я знаю, но КАК их правильно использовать в обработчике клика по кнопке???? Заранее огромное спасибо!!! | |
Георгий (06-04-2003 23:45:52) | |
ЭЛЕМЕНТАРНО (похоже зря я из запоя вышел...) void __fastcall TForm1::Button1Click(TObject *Sender) { static int CDstate=0; char* StateNames[]={"her ego znaet","типа выдвинут","типа вдвинут"}; switch (CDstate) { case 0://не определённое состояние CDstate=GetCDState(); CDstate=(CDstate<0 || CDstate>2)?(0):(CDstate); break; case 1://задвинутое — выдвигаем CDstate=2; edject(); break; case 2://выдвинутое — задвигаем CDstate=1; antiEdject(); break; default://??? на всякий случай... break; }; Button1->Caption=StateNames[CDstate]; } о конечных автоматах даже в школе расказывают... вместо antiEdject() edject() GetCDState() поставь те функции, что тебе нужны |