Cyklus For do richtexboxu – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Cyklus For do richtexboxu – .NET – Fórum – Programujte.comCyklus For do richtexboxu – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
matesz0
Návštěvník
8. 10. 2012   #1
-
0
-

Zdravím,

Mám asi 5 radioButtonů a každý má svou hodnotu. Ukládám jí do proměné  takhle:

if (radioButton1.Checked)
            {
                a = int.Parse(radioButton1.Text);
                richTextBox1.Text = a.ToString();
            }

ale, když chci udělat cyklus který by pomocí For vypsal x-krát tu hodnotu do richTextBoxu tak mi to nechce fungovat.

Zkoušel jsem to takhle, ale nefunguje to.

for (int i = 0; i < a; i++)
            {
                richTextBox1.Text = a.ToString() + "\r\n";
            }

Díky

Nahlásit jako SPAM
IP: 90.176.181.–
Reklama
Reklama
Mutagen0
Super člen
8. 10. 2012   #2
-
+1
-
Zajímavé

#1 matesz
nevim zda se nepletu ale ty nepridáváš další text ale ty nahrazuješ text ... Takže pokud se nepletu tak ti to furt ukazuje jen 1 udaj a ten se updatuje žejo?

for (int i = 0; i < a; i++)
{
	richTextBox1.Text += a.ToString() + "\r\n";
}

Zkus to takhle ;)

Nahlásit jako SPAM
IP: 89.190.90.–
ingiraxo+15
Grafoman
8. 10. 2012   #3
-
+1
-
Zajímavé

#1 matesz
spíš bych doporučil takto :) 

for (int i = 0; i < a; i++)
{
    richTextBox1.AppendText(a.ToString() + "\r\n");
}
Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
matesz0
Návštěvník
9. 10. 2012   #4
-
0
-

#3 ingiraxo
Funguje to, díky.

Jen ještě jedna otázka . Zaškrtnu hodnotu v radioButonu a pak v CheckBoxu a chtěl bych aby se hodnota a vygenerovala do richTextBoxu tolikrát jaká je hodnota CheckBoxu, viz. kód níže, ale když to zkouším tak jak to mám tak to nefunguje. Jinak když nemám zaškrtlý radioButton, tak se mi to vygeneruje, jen tam jsou 0, ale jak tam je ten radioButton tak se neobjeví nic

Díky.

          if (radioButton1.Checked)
            {
                a = int.Parse(radioButton1.Text);
                
            }

            else if (checkBox1.Checked)
            {
                b = int.Parse(checkBox1.Text);
                
              }
           

            for (int i = 0; i < b; i++)
            {
                richTextBox1.AppendText(a.ToString() + "\r\n");
            }
Nahlásit jako SPAM
IP: 90.176.181.–
ingiraxo+15
Grafoman
9. 10. 2012   #5
-
0
-

 nevim přesně jak to myslíš, ale snad takto.. hlavně nevim k čemu tam jsou proměnný "a,b", ale to je jedno...

if (radioButton1.Checked && checkBox1.Checked)
{
    a = int.Parse(radioButton1.Text);
    b = int.Parse(checkBox1.Text);

    for (int i = 0; i < b; i++)
    {
        richTextBox1.AppendText(a.ToString() + "\r\n");
    }        
}
Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
matesz0
Návštěvník
9. 10. 2012   #6
-
0
-

#5 ingiraxo
Ty proměný dávám jako příklad. Ale spíš bych potřeboval, aby ten radioButton a ChechBox byl každý zvlášť.

Takhle, mám aplikaci a jsou tam dva sloupce hodnot. Uživatel zaškrtne v každém sloupci jednu hodnotu a hodnota č.1 se bude zobrazovat v richTxtBoxu cyklem For, a hodnotou č.2 se bude určovat kolikrát se hodnota č.1 zobrazí v tom RichTextBoxu.  

Snad jsem to vysvětlil dobře.

 For ( int i = 0; i < hodnota č.2; i++)
      {
            výpis hodnoty č.1 do richtextBoxu
        }
Nahlásit jako SPAM
IP: 90.176.181.–
ingiraxo+15
Grafoman
9. 10. 2012   #7
-
0
-

#6 matesz
ale radio button je vždy zaškrtlej, takže hodnotu si získás pokaždy, když se má vykonat cyklus.. je to jak jsem psal, jen v tý podmínce bude jen checkbox

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
matesz0
Návštěvník
9. 10. 2012   #8
-
0
-

Asi jsem to nepochopil. Jinak tady přikládám obrázek: uživatel zaškrtne libovolný RadioButton a jeden CheckBox a podle toho co zaškrtl se ta hodnota z leveho sloupce vygeneruje do TextRichBoxu  tolikrát jako byla hodnota pravého sloupce .

Nahlásit jako SPAM
IP: 90.176.181.–
ingiraxo+15
Grafoman
10. 10. 2012   #9
-
0
-

však jsem ti to psal...

1) když tam máš pole radiobuttonu, tak ten bude vždy nastavenej a měl by si mu i nastavit výchozí hodnotu (zaškrtnutí)

2) jak jeden checkbox, však můžeš zaškrtnou klidně všechny checkboxy

3) a hlavně v podmínce kontroluješ jen první checkbox a první radiobutton

Pokud počet opakování v cyklu je součet hodnot z checkboxů, tak musíš sečíst všechny zaškrtnutý, ale hlavně nechápu i význam ty app

pro ukázku... 

        private void Click_Generate(object sender, EventArgs e)
        {
            int number = 0;

            // radiobuttony jsou ulozeny v GroupBoxu (neni povinnost) a
            // zaroven je prvni radio nastaven jako vychozi hodnota (tez neni povinnost,
            // ale u radioboxu se to doporucuje)
            foreach (RadioButton rb in gbNumber.Controls)
            {
                if (rb.Checked)
                {
                    number = int.Parse(rb.Text);
                    break;
                }
            }
            int count = 0;

            // checkboxy jsou opet ve vlastnim GroupBoxu - muze byt to same jako u
            // radiobuttonu, ale zde nemusi
            foreach (CheckBox cb in gbCount.Controls)
            {
                if (cb.Checked)
                    count += int.Parse(cb.Text); // nutno secist vsechny zaskrtnuty checkboxy
            }
            rtbOut.Clear(); // pri kazdy stisku na generaci se smaze obsah RTboxu

            for (int i = 0; i < count; i++)
            {
                rtbOut.AppendText(number + "\r\n");
            }
        }

samozřejmě to jde řešit mnoha způsoby, tohle je jen jedna z nich

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
ingiraxo+15
Grafoman
10. 10. 2012   #10
-
0
-

Pokud to ovšem vezmu tak jak to myslíš, že bude vždy u radio i cboxu jedna volba, tak to mužeš udělat i takto 

        private int number = 0;
        private int count = 0; 

        private void Click_Generate(object sender, EventArgs e)
        {
            rtbOut.Clear();

            for (int i = 0; i < count; i++)
            {
                rtbOut.AppendText(number + "\r\n");
            }
        }

        private void Check_Radio(object sender, EventArgs e)
        {
            number = int.Parse(((Control)sender).Text);
        }

        private void Check_Box(object sender, EventArgs e)
        {
            count = int.Parse(((Control)sender).Text);
        }

možností je plno.. ale zde nesmíš mít zaškrtnutý nic - tak jak to máš na screenu

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
matesz0
Návštěvník
10. 10. 2012   #11
-
0
-

#9 ingiraxo
Díky. Jenom když chci používat gbNumber nebo gbCount, tak mi to píše: Error 5 The name 'gbNumber' does not exist in the current context. Hledal jsem na google jestli se nemá použít nějaké knihovna,ale nic jsem nenašel.

Nahlásit jako SPAM
IP: 90.176.181.–
ingiraxo+15
Grafoman
10. 10. 2012   #12
-
0
-

#11 matesz
to jsem měl ještě v groupboxech.. proto gbNeco... můžeš tam dát jenom Controls, ale musíš tam přidat ještě podmínku pro určitej kontrolní prvek na formu

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 87 hostů

Podobná vlákna

Cyklus For — založil nergaldiabolus

Cyklus for(...... — založil Hansel

Cyklus while — založil pep

Cyklus — založil Elendor

Cyklus — založil Jirka

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý