Ïåðåêëþ÷àòåëü (çàâèñèìûé ïåðåêëþ÷àòåëü) ïîçâîëÿåò âûáðàòü åäèíñòâåííîå çíà÷åíèå èç îïðåäåëåííîãî ìíîæåñòâà çíà÷åíèé, ïðåäñòàâëåííîãî ãðóïïîé ïåðåêëþ÷àòåëåé. Îí ìîæåò íàõîäèòüñÿ â âûáðàííîì èëè íå âûáðàííîì ñîñòîÿíèè. Îäíîâðåìåííî ìîæíî âûáðàòü òîëüêî îäèí ïåðåêëþ÷àòåëü â ãðóïïå.
Ôëàæîê (íåçàâèñèìûé ïåðåêëþ÷àòåëü) îòëè÷àåòñÿ îò ïåðåêëþ÷àòåëÿ òåì, ÷òî â ãðóïïå ôëàæêîâ îäíîâðåìåííî ìîæíî óñòàíîâèòü ôëàæêè â ëþáîé êîìáèíàöèè. Ôëàæîê ìîæåò íàõîäèòüñÿ â óñòàíîâëåííîì èëè ñáðîøåííîì ñîñòîÿíèè.
Ôëàæîê ïðåäñòàâëåí êîìïîíåíòîì ChekBox. Îí âûãëÿäèò êàê ïðÿìîóãîëüíèê ñ òåêñòîâûì çàãîëîâêîì. Åñëè â íåì åñòü ãàëî÷êà, òî îïöèÿ âêëþ÷åíà (ôëàæîê îòìå÷åí).
Äëÿ îïðåäåëåíèÿ ñîñòîÿíèÿ ôëàæêà èñïîëüçóåòñÿ ñâîéñòâî Checked ëîãè÷åñêîãî òèïà (ïî óìîë÷àíèþ – False, ôëàæîê ñíÿò).
Ïîëüçîâàòåëü ìîæåò ïåðåêëþ÷àòü ñîñòîÿíèå ôëàæêà ùåë÷êîì ìûøè. ×òî îòðàæàåòñÿ íà ñâîéñòâå Checked. Ôëàæîê ìîæíî ïåðåêëþ÷èòü ñ ïîìîùüþ êëàâèøè ïðîáåë, ïðè óñëîâèè, ÷òî êîìïîíåíò íàõîäèòñÿ â ôîêóñå ââîäà.
Ïðè êàæäîì ùåë÷êå ïîëüçîâàòåëÿ íà èíäèêàòîðå åãî ñîñòîÿíèå èçìåíÿåòñÿ, ïðîõîäÿ â îáùåì ñëó÷àå ïîñëåäîâàòåëüíî ÷åðåç òðè çíà÷åíèÿ: âûäåëåíèå (ïîÿâëåíèå ÷åðíîé ãàëî÷êè), ïðîìåæóòî÷íîå (ñåðîå îêíî èíäèêàòîðà è ñåðàÿ ãàëî÷êà) è íå âûäåëåííîå (ïóñòîå îêíî èíäèêàòîðà). Ýòèì òðåì ñîñòîÿíèÿì ñîîòâåòñòâóþò òðè çíà÷åíèÿ ñâîéñòâà êîìïîíåíòà State:
- cbChecked;
- cbGrayed;
- cbUnchecked.
Ýòè òðè ñîñòîÿíèÿ äîïóñêàþòñÿ òîëüêî ïðè çíà÷åíèè äðóãîãî ñâîéñòâà AllowGrayed ðàâíîì true. Åñëè æå AllowGrayed = false (çíà÷åíèå ïî óìîë÷àíèþ), òî äîïóñêàåòñÿ òîëüêî äâà ñîñòîÿíèÿ: âûäåëåííîå è íå âûäåëåííîå.
Ïðîìåæóòî÷íîå ñîñòîÿíèå îáû÷íî èñïîëüçóåòñÿ, åñëè èíäèêàòîð ïðèìåíÿåòñÿ äëÿ îòîáðàæåíèÿ êàêîé-òî õàðàêòåðèñòèêè îáúåêòà. Íàïðèìåð, åñëè èíäèêàòîð ïðèçâàí ïîêàçàòü, êàêîé ðåãèñòð èñïîëüçîâàëñÿ ïðè íàïèñàíèè êàêîãî-òî ôðàãìåíòà òåêñòà, òî â ñëó÷àå, åñëè âåñü òåêñò íàïèñàí â âåðõíåì ðåãèñòðå èíäèêàòîð ìîæåò ïðèíèìàòü âûäåëåííîå ñîñòîÿíèå, åñëè â íèæíåì — íå âûäåëåííîå, à åñëè èñïîëüçîâàëèñü îáà ðåãèñòðà — ïðîìåæóòî÷íîå.
 èíäèêàòîðå CheckBox íàäïèñü çàäàåòñÿ ñâîéñòâîì Caption, à åå ðàçìåùåíèå ïî îòíîøåíèþ ê èíäèêàòîðó – ñâîéñòâîì Alignment.
Ïåðåêëþ÷àòåëü ïðåäñòàâëåí êîìïîíåíòîì RadioButton, êîòîðûé îòîáðàæàåòñÿ â âèäå êðóæêà ñ òåêñòîâûì çàãîëîâêîì (ïðè âûáðàííîì ñîñòîÿíèè â êðóæêå ïîÿâëÿåòñÿ ÷åðíàÿ òî÷êà).
Ñâîéñòâî Caption ñîäåðæèò íàäïèñü, ïîÿâëÿþùóþñÿ îêîëî êíîïêè. Çíà÷åíèå ñâîéñòâà Alignment îïðåäåëÿåò, ñ êàêîé ñòîðîíû îò êíîïêè ïîÿâèòñÿ íàäïèñü. Ñâîéñòâî Checked îïðåäåëÿåò, âûáðàíà ëè äàííàÿ êíîïêà ïîëüçîâàòåëåì, èëè íåò. Ïîñêîëüêó â íà÷àëå âûïîëíåíèÿ ïðèëîæåíèÿ îáû÷íî íàäî, ÷òîáû îäíà èç êíîïîê ãðóïïû áûëà âûáðàíà ïî óìîë÷àíèþ, åå ñâîéñòâî Checked íàäî óñòàíîâèòü â true â ïðîöåññå ïðîåêòèðîâàíèÿ.
Ïåðåêëþ÷àòåëè îáû÷íî ðàñïîëàãàþòñÿ ïî ãðóïïàì (ôîðìà Form, ïàíåëü Panel, ãðóïïà GroupBox). Âûáîð ïåðåêëþ÷àòåëÿ ÿâëÿåòñÿ âçàèìîèñêëþ÷àþùèì, ò.å. ïðè âûáîðå îäíîãî ïåðåêëþ÷àòåëÿ äðóãèå ñòàíîâÿòñÿ íå âûáðàííûìè.
Êîãäà â ãðóïïå âûáðàí îäèí èõ ïåðåêëþ÷àòåëåé, òî åãî ñîñòîÿíèå íåëüçÿ ïîìåíÿòü ïîâòîðíûì ùåë÷êîì, êàê äëÿ ôëàæêîâ. Îòìåíà âûáîðà ïðîèñõîäèò òîëüêî ïðè âûáîðå äðóãîãî ïåðåêëþ÷àòåëÿ èç ýòîé æå ãðóïïû.
 Delphi åñòü ñïåöèàëèçèðîâàííûé êîìïîíåíò RadioGroup, ïðåäñòàâëÿþùèé ñîáîé ãðóïïó ïåðåêëþ÷àòåëåé RadioButton.
Óïðàâëåíèåì ÷èñëîì è íàçâàíèÿìè ïåðåêëþ÷àòåëåé ïðîèçâîäèòñÿ ñ ïîìîùüþ ñâîéñòâà Items. Äîñòóï ê îòäåëüíîìó ïåðåêëþ÷àòåëþ ìîæíî ïîëó÷èòü ÷åðåç ñâîéñòâî ItemIndex (ïîçèöèÿ ïåðåêëþ÷àòåëÿ).
Ñâîéñòâî Columns çàäàåò ÷èñëî ñòîëáöîâ, íà êîòîðîå ðàçáèâàþòñÿ ïåðåêëþ÷àòåëè ïðè ðàñïîëîæåíèè â ãðóïïå.
|