Jump to content
Sign in to follow this  
skiller10

Variaveis globais

Recommended Posts

skiller10

Hey,

Estou a desenvolver um projecto e precisava de enviar variaveis e estruturas entre todas as forms do projecto, só que não sei como o fazer, alguém me pode dar uma ajudita?

Cumps, skiller10


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites
filiperainho

Para poderes aceder em diferentes forms podes criar uma classe "gestor" onde vais fazer a declaração das variáveis como

public

ou então encapsulando.

E depois nos forms onde queres aceder declaras a classe "gestor" e assim já consegues aceder as variáveis.

Pode-te parecer pouco fiável mas talvez seja a maneira mais simples para começar.


Programador - C# ; C ; PHP ; JavaScript ; CSS ; HTML ; iniciante em Android.

Share this post


Link to post
Share on other sites
M6

Cuidado com as variáveis globais.

Isso viola as práticas da boa programação.

Há formas correctas de propagar a informação numa aplicação, e isso não passa por variáveis globais.

Por exemplo, os teus forms podem ter setters para receber a informação e getters para a devolver. Ou então usas um objecto singleton para fazer a gestão da informação.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
skiller10

Obrigado pela ajuda, consegui resolver o problema da maneira que o filiperainho disse, mais tarde depois de ter o programa a funcionar, vou aperfeiçoa-lo, e tentar usar a tua maneira M6.

Surgiu-me agora outro problema, estou a tentar fazer a ligação do c# com base de dados SQL mas dá-me erro a fazer a conexão, declarei a biblioteca:

using System.Data.SqlClient;

E tenho este código para fazer a conexão à bd:

            string nome = tb_nome.Text.ToString();
            string ip = mt_ip.Text.ToString();
            string obs = tb_obs.Text.ToString();
            string lastrestore = "18-05-2011";

            SqlConnection myConnection = new SqlConnection("user id=jm10;" +
                                       "password=1234;server=127.0.0.1;" +
                                       "Trusted_Connection=yes;" +
                                       "database=minhabd; " +
                                       "connection timeout=30");

            myConnection.Open(); //Dá erro nesta linha;

            SqlCommand myCommand = new SqlCommand("INSERT INTO hosts (Nome, IP, UltimoRestore, Observacoes) " +
                                     "Values (" + nome + ", " + ip + ", " + lastrestore + ", " + obs + ")", myConnection);

            myCommand.ExecuteNonQuery();


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites
filiperainho

Dscpa mas nao trabalho com SQLServer, uso mysql.  ;)


Programador - C# ; C ; PHP ; JavaScript ; CSS ; HTML ; iniciante em Android.

Share this post


Link to post
Share on other sites
skiller10

não funciona da mesma maneira, tipo acho que é para incorporar em SQLServer mas estou a fazer os testes em mysql com o XAMPP :s

Podes-me explicar como é em mysql?


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites
skiller10

Obrigado ;D


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites
filiperainho

Penso que com isso te safas, eu safei. ;)


Programador - C# ; C ; PHP ; JavaScript ; CSS ; HTML ; iniciante em Android.

Share this post


Link to post
Share on other sites
skiller10

Já estou quase quase a conseguir, mas tenho um pequeno problema, provavelmente no comando para o mysql, visto que ainda é o 2ºdia que estou a trabalhar com c# e nao tenho experiencia com sql :s

Já agora os campos da tabela são:

Id - Int - Incrementa automaticamente

Nome - varchar - maxtam 100

IP - varchar - maxtam 20

UltimoRestore- varchar - maxtam 20

Observacoes - Text

using MySql.Data.MySqlClient;

        private System.Windows.Forms.DataGrid mDataGrid;
        private MySqlConnection mConn;
        private MySqlDataAdapter mAdapter;
        private DataSet mDataSet;

            string nome = tb_nome.Text.ToString();
            string ip = mt_ip.Text.ToString();
            string obs = tb_obs.Text.ToString();
            string lastrestore = "18-05-2011";
            
            //Carregar dados para a bd...
            mDataSet = new DataSet();
            mConn = new MySqlConnection(" Persist Security Info=False;server=localhost;database=sasrestore;uid=root;database=minhabd");
            
            mConn.Open();

            if (mConn.State == ConnectionState.Open)
            {
                mAdapter = new MySqlDataAdapter("INSERT INTO hosts (Nome, IP, UltimoRestore, Observacoes) " +
                                     "Values (" + nome + ", " + ip + ", " + lastrestore + ", " + obs + ")", mConn);
                mAdapter.Fill(mDataSet, "hosts"); //Local onde dá erro;
                mDataGrid.DataSource = mDataSet;
                mDataGrid.DataMember = "hosts";
                mConn.Close();
            }
            else
            {
                MessageBox.Show("Erro na abertuda da base de dados! (2)");
            }


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites
filiperainho

mAdapter = new MySqlDataAdapter("INSERT INTO hosts (Nome, IP, UltimoRestore, Observacoes) " +
                                     "Values ('" + nome + "', '" + ip + "', '" + lastrestore + "', '" + obs + "')", mConn);

Tenta desta maneira! nao tinhas plicas na strings.


Programador - C# ; C ; PHP ; JavaScript ; CSS ; HTML ; iniciante em Android.

Share this post


Link to post
Share on other sites
skiller10

Problema resolvido, Obrigado ;)


"Eu acredito que a vida está constantemente nos testando em nosso nível de confiança, e a vida tem grande recompensa reservada àqueles que demonstram uma confiança sem fim para agir até conseguir. Este nível de resolução pode mover montanhas, mas ele tem de ser constante e consistente. Tão simples quanto isso possa soar, ainda é o denominador comum que separa aqueles que vivem seus sonhos dos que vivem simplesmente.."

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.