RadioButton се примењује за неку опцију за коју су могућа само два случаја, или да се примењује дата опција или да се не примењује. Наша форма може садржати више RadioButton-а али у било ком тренутку само један можемо примењивати.
За почетак, требало би да направимо нову Windows Form апликацију у Visual Studio-u, а затим двоструким кликом левог тастера миша на RadioButton у ToolBox-у да додамо RadioButton. Када се RadioButton постави на форму, морамо подесити особине, најлакши начин за то је у прозору Properties.
Прозор Properties можемо отворити притиском на дугме F4. Особине можемо подесити и динамички, тј. одређеним кодом.
Слика 7.1. Прозор Properties | Слика 7.2. Форма |
Пример 1.
Компонента RadioButton се примењује и у калкулатору, где можемо приметити и једну од главних особина RadioButton-а, да само једну опцију можемо одабрати од више понуђених.
//Kreira novi RadioButton
RadioButton RB = new RadioButton();
//Odredjuje poziciju gornje, leve tаcke RadioButton-а u odnosu na gornju, levu tacku forme
RB.Location = new Point(20, 100);
//Dodeljuje visinu polja RadioButton
RB.Height = 30;
//Dodeljuje sirinu polja RadioButton
RB.Width = 150;
//Dodeljuje upravo definisan RadioButton na formu
Controls.Add(RB);
или
//Definise novi RadioButton
RadioButton RB = new RadioButton();
//Odredjuje udaljenost RadioButton-а od leve ivice forme
RB.Left = 15;
//Odredjuje udaljenost RadioButton-а od gornje ivice forme
RB.Top = 15;
//Dodeljuje visinu polja RadioButton
RB.Height = 30;
//Dodeljuje sirinu polja RadioButton
RB.Width = 200;
//Dodeljuje upravo kreiran RadioButton na formu
Controls.Add(RB);
Слика 7.4. Прва форма | Слика 7.5. Друга форма |
//Boja pozadine
RB.BackColor = Color.Red;
//Boja teksta
RB.ForeColor = Color.Blue;
RB.Name = "Radio dugme";
//Odredjivanje teksta koji stoji uz RadioButton
RB.Text = "Ovo je RadioButton";
//Podesavanje pozicije teksta koji stoji uz RadioButton
RB.TextAlign = ContentAlignment.MiddleCenter;
//Pozicija dela za cekiranje
RB.CheckAlign = ContentAlignment.MiddleRight;
RB.Font = new Font("Arial", 9);
RB.Checked = true;//RadioButton je cekiran
if (RB.Checked)
{
//Uradi nesto kada je RadioButton cekiran
}
else
{
//Uradi nesto kada RadioButton nije cekiran
}
Пример 2.
Направимо програм у којем ћемо имати четири RadioButton-а, једно дугме и две лабеле, који ће нам пружати могућност да бирамо где ћемо провести распуст.
private void button1_Click(object sender, EventArgs e)
{
//Ako je prvi radioButton1 cekiran ispisi dati tekst u label2
if (radioButton1.Checked)
label2.Text = "Raspust cu provesti na selu kod bake i deke.";
//Ako je drugi radioButton1 cekiran ispisi dati tekst u label2
if (radioButton2.Checked)
label2.Text = "Raspust cu provesti na moru sa porodicom.";
//Ako je treci radioButton cekiran ispisi dati tekst u label2
if (radioButton3.Checked)
label2.Text = "Raspust cu provesti u kampu sa drugarima.";
//Ako je cetvrti radioButton cekiran ispisi dati tekst u label2
if (radioButton4.Checked)
label2.Text = "Raspust cu provesti kuci.";
}
Када смо покренули програм један од могућих изгледа форме је:
Слика 7.10.Форма |
Пример 3. Направимо програм у којем ћемо имати три RadioButton-а, једно дугме, једну лабелу и један TextBox, који ће нам пружати могућност да бирамо којим ћемо превозом путовати.
Решење :
Слика 7.11. Правимо форму облика | Слика 7.12. Преименујемо компоненте |
private void button1_Click(object sender, EventArgs e)
{
if (radioButton1.Checked)
//Ako je prvi radioButton1 cekiran ispisi dati tekst u textBox1
textBox1.Text = "Odabrali ste avion.";
if (radioButton2.Checked)
//Ako je drugi radioButton1 cekiran ispisi dati tekst u textBox1
textBox1.Text = "Odabrali ste autobus.";
if (radioButton3.Checked)
//Ako je treci radioButton cekiran ispisi dati tekst u textBox1
textBox1.Text = "Odabrali ste sopstveni prevoz.";
}
Пример 4. Написати програм који за унета три броја браћа њихов максимум или минимум, у зависности од тога шта желимо наћи, при чему се за то опредељујемо помоћу два radioButton-а.
Решење :
Слика 7.14. Правимо форму овог облика | Слика 7.15. Преименујемо компоненте |
private void button1_Click(object sender, EventArgs e)
{
if (radioButton1.Checked)
{
//Inicijalizujemo promenljive
int x, y, z, min;
x = int.Parse(textBox1.Text);
y = int.Parse(textBox2.Text);
z = int.Parse(textBox3.Text);
//Novoj promenljivoj dodeljujemo vrednost jednog unetog broja
min = x;
//Pitamo se da li je drugi uneti broj manji od min
if (y < min)
//Ako jeste, min je sada taj drugi broj
min = y;
//Ako nije, pitamo se da li je i treci broj manji od min
if (z < min)
//Ako jeste, onda je min bas taj treci broj
min = z;
//Ispisujemo nas minimum
label5.Text = "Minimum uneta tri broja je : " + min;
}
else if (radioButton2.Checked)
{
//Inicijalizujemo promenljive
int x, y, z;
int max;
x = int.Parse(textBox1.Text);
y = int.Parse(textBox2.Text);
z = int.Parse(textBox3.Text);
//Novoj promenljivoj dodeljujemo vrednost jednog unetog broja
mаx = x;
//Pitamo se da li je drugi uneti broj veci od max
if (y > mах)
//Ako jeste, max je sada taj drugi broj
max = y;
//Ako nije, pitamo se da li je i treci broj veci od max
if (z > max)
//Ako jeste, onda max sada postaje taj treci broj
max = z;
//Ispisujemo nas max
label5.Text = "Maksimum uneta tri broja je : " + mах;
}
}
Покренемо програм: