none
Check Box C# Visual Studio RRS feed

  • Pergunta

  • Olá Pessoal, 

    Tenho o seguinte cenário: tenho uma aplicação windows form com 4 checks boxs, dois botões um ler e outro gravar.

    O que preciso é o seguinte: quando eu clicar em ler ele busca os dados em um arquivo .txt que contém 4 linhas;

    Dependendo do conteúdo da linha, ele vai marcar ou desmarcar o check box. ou seja imagine o status de um cliente

    que está numa base .TXT se o cliente tiver restrição ele marca o checkbox para mim, caso não ele deixa desmarcado.

    O código abaixo está ok, funcionado apenas faltando essa última parte que é marcar o check box de acordo com o que estiver no arquivo .TXT.

    Usando MessageBox funcionou, mas eu preciso ao invés de mostrar mensagem, marcar o checkbox. se alguem puder ajudar ficarei agradecido..

    using System;
    using System.Linq;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;

    namespace InventarioColetWinCE
    {
        public partial class frmConfig : Form
        {
            public frmConfig()
            {
                InitializeComponent();
            }

            private void label1_ParentChanged(object sender, EventArgs e)
            {

            }

            private void checkBox1_CheckStateChanged(object sender, EventArgs e)
            {
                if (checkBox1.Checked)
                {
                    label1.Text = "1";
                }
                else
                {
                    label1.Text = "0";
                }
            }

            private void label2_ParentChanged(object sender, EventArgs e)
            {
               
            }

            private void checkBox2_CheckStateChanged(object sender, EventArgs e)
            {
                if (checkBox2.Checked)
                {
                    label2.Text = "1";
                }
                else
                {
                    label2.Text = "0";
                }
            }

            private void checkBox3_CheckStateChanged(object sender, EventArgs e)
            {
                if (checkBox3.Checked)
                {
                    label3.Text = "1";
                }
                else
                {
                    label3.Text = "0";
                }
            }

            private void checkBox4_CheckStateChanged(object sender, EventArgs e)
            {
                if (checkBox4.Checked)
                {
                    label4.Text = "1";
                }
                else
                {
                    label4.Text = "0";
                }
            }

            private void button1_Click(object sender, EventArgs e)
            {
                ClsArquivoTXT LCLS_ArquivoTXT = new ClsArquivoTXT();
                LCLS_ArquivoTXT.FU_Gravar(label1.Text, label2.Text, label3.Text, label4.Text);
                label1.Text = "";
                label2.Text = "";
                label3.Text = "";
                label4.Text = "";
                MessageBox.Show("Gravado com sucesso!");
               // this.Close();
            }

         
            private void label7_ParentChanged(object sender, EventArgs e)
            {

            }

            private void button2_Click_1(object sender, EventArgs e)
            {
                if (File.Exists("\\Application\\Inv_2A\\Config\\Configuracoes.txt"))
                {

                    Stream entrada = File.Open("\\Application\\Inv_2A\\Config\\Configuracoes.txt", FileMode.Open);
                    StreamReader leitor = new StreamReader(entrada);
               //   int teste = 0;
                    string linha = leitor.ReadLine();
                    while (linha != null)
                    {
                  //   MessageBox.Show("Tecle Algo"); 

                    label5.Text = linha;

                    switch (linha)
                     {
                        case "ITENS_TXT=0":

                            // if (checkBox1.CheckState) = false
                          //   {
                             
                             
                           //  }

                     //     if (teste = 0)
                   //         {
                       //          newstate = (checkBox1.checked = false);
                       //        }


                      //       MessageBox.Show("CheckBox = Disticado");       
                             
                             break;
                       
                        case "ITENS_TXT=1":
                            
                                 MessageBox.Show("CheckBox = Ticado");
                                                      
                             break;

                        case "MENSAGEM_NAO_ENCONTRADO=0":

                             MessageBox.Show("CheckBox = Disticado");

                             break;

                        case "MENSAGEM_NAO_ENCONTRADO=1":

                             MessageBox.Show("CheckBox = Ticado");

                             break;

                        case "LEITURA_CONTINUA=0":

                             MessageBox.Show("CheckBox = Disticado");

                             break;

                        case "LEITURA_CONTINUA=1":

                             MessageBox.Show("CheckBox = Ticado");

                             break;
                        case "CONTAGEM_RESUMIDA=0":

                             MessageBox.Show("CheckBox = Disticado");

                             break;

                        case "CONTAGEM_RESUMIDA=1":

                             MessageBox.Show("CheckBox = Ticado");

                             break;
                        
                     }      

                    linha = leitor.ReadLine();
                                                                                                   
                    }
                    leitor.Close();
                    entrada.Close();
                }
            }

            private void frmConfig_Load(object sender, EventArgs e)
            {

            }

            
                    
        
        
        
        }

    }

    terça-feira, 5 de maio de 2020 01:34

Todas as Respostas

  • Olá!

    Pelo que entendi você está tentando marcar a checkBox correspondente sempre que os cases "ITENS_TXT=1", "MENSAGEM_NA0_ENCONTRADO=1", "LEITURA_CONTINUA=1" e "CONTAGEM_RESUMIDA=1" forem satisfeitos dentro do switch. Sendo assim, veja se dessa forma funciona:

    private void button2_Click_1(object sender, EventArgs e)
    {
        if (File.Exists("\\Application\\Inv_2A\\Config\\Configuracoes.txt"))
        {
    
            Stream entrada = File.Open("\\Application\\Inv_2A\\Config\\Configuracoes.txt", FileMode.Open);
            StreamReader leitor = new StreamReader(entrada);
       //   int teste = 0;
            string linha = leitor.ReadLine();
            while (linha != null)
            {
          //   MessageBox.Show("Tecle Algo"); 
    
            label5.Text = linha;
    
            switch (linha)
             {
                case "ITENS_TXT=0":
                     checkBox1.Checked = false;
                     break;
               
                case "ITENS_TXT=1":
                     checkBox1.Checked = false;           
                     break;
    
                case "MENSAGEM_NAO_ENCONTRADO=0":
                     checkBox2.Checked = false;
                     break;
    
                case "MENSAGEM_NAO_ENCONTRADO=1":
                     checkBox2.Checked = true;
                     break;
    
                case "LEITURA_CONTINUA=0":
                     checkBox3.Checked = false;
                     break;
    
                case "LEITURA_CONTINUA=1":
                     checkBox3.Checked = true;
                     break;
    
                case "CONTAGEM_RESUMIDA=0":
                     checkBox4.Checked = false;
                     break;
    
                case "CONTAGEM_RESUMIDA=1":
                     checkBox4.Checked = true;
                     break;
                
             }      
    
            linha = leitor.ReadLine();
                                                                                           
            }
            leitor.Close();
            entrada.Close();
        }
    }


    “First do it, then do it right, then do it better.” # Introdução ao C# - Uma Abordagem Prática (Módulo I) https://www.udemy.com/course/introducao-ao-c-uma-abordagem-pratica-modulo-i/?referralCode=8C11BF75D94DADB41112

    terça-feira, 5 de maio de 2020 17:17