jueves, 30 de abril de 2015

Codigo de Inicio de Sesion Visual C++ 2005

 if((this->CAMPO1->Text == "")||(this->CAMPO2->Text ==""))
{
MessageBox::Show("Datos Incompletos");
}
else
{
//APUNTADORES PARA LA  BASE DE DATOS
System::Data::OleDb::OleDbConnection^ link;
System::Data::OleDb::OleDbCommand^ ejecutar;
System::Data::OleDb::OleDbDataReader^ Datos;
System::String^ linkstring;
System::String^ db;
//CONEXION PARA LA BASE DE DATOS
linkstring="Provider=Microsoft.ACE.OLEDB.12.0;Data Source='ACCESS2007.accdb'";
                 link = gcnew  OleDbConnection(linkstring);
link->Open();
//SELECCION DE LA BASE DE DATOS
db=("SELECT *  FROM TABLA WHERE CAMPO=  '" + this->CAMPO1->Text + "' ; ");
ejecutar= gcnew OleDbCommand(db,link);
Datos = ejecutar->ExecuteReader();
if (Datos->Read())
{
String ^ user;
String ^ pass;
user = Datos->GetString(0); //Posicion del Usuario en la Base de datos
pass = Datos->GetString(1); //Posicion de la Clave en la base de datos
//Las posiciones se cuenta iniciando el numero 0
if((this->CAMPO1->Text == user)&&(this->CAMPO2->Text == pass))
{
MessageBox::Show("Bienvenido "+user+"");
Form ^ VARIABLE = gcnew opciones();
VARIABLE->Show();
}
else
MessageBox::Show("Acceso denegado");

   }
CAMPO1->Clear();
CAMPO2->Clear();
 
}

viernes, 6 de febrero de 2015

MODIFICAR DATOS

private:System::Void MODIFICAR()
{
//APUNTADORES PARA LA  BASE DE DATOS
System::Data::OleDb::OleDbConnection^ Cnn;
System::Data::OleDb::OleDbCommand^ Micomando;
System::Data::OleDb::OleDbDataReader^ Datos;
System::String^ strconexion;
System::String^ strsql;
//CONEXION PARA LA BASE DE DATOS
strconexion="Provider=Microsoft.Jet.OLEDB.4.0; Data Source= 'ACCESS2003.mdb' ";
                 Cnn = gcnew  OleDbConnection(strconexion);
Cnn->Open();
//SELECCION DE LA BASE DE DATOS
// this->textBox1->Text == L"Cancelado";
strsql=("UPDATE contacto SET ciudad= '"+ this->ciudad->Text+" '   WHERE TELEFONO=  '" + this->buscartelefono->Text + "' ; ");

                     Micomando= gcnew OleDbCommand(strsql,Cnn);
try {
Datos = Micomando->ExecuteReader();
// MessageBox::Show("Actualizando");
// this->groupBox1->Visible=false;
     
     }
catch (System::Exception^ z)
{
MessageBox::Show("Error Actualizando"+ z->Message  );
}
}

Consultar Datos hacia un DatagridView



int cr=0;int i,j;j=0;



//APUNTADORES PARA LA  BASE DE DATOS
System::Data::OleDb::OleDbConnection^ Conex;
System::Data::OleDb::OleDbCommand^ Coman;
System::Data::OleDb::OleDbDataReader^ Datos;
System::String^ strconexion;
System::String^ Misql;
//CONEXION PARA LA BASE DE DATOS
strconexion="Provider=Microsoft.Jet.OLEDB.4.0; Data Source= 'ACCESS2003.mdb' ";
                 Conex = gcnew  OleDbConnection(strconexion);
Conex->Open();
//SELECCION DE LA BASE DE DATOS

Misql=("SELECT  NOMBRE, APELLIDO,TELEFONO, ESTADO, CIUDAD, DIRECCION FROM contacto WHERE ESTADO=  '" + this->comboBox1->Text + "';");
    Coman= gcnew OleDbCommand(Misql,Conex);
Datos = Coman->ExecuteReader();
 



while (Datos->Read())
   {
  i=0;
   dataGridView1->Rows->Add();
                    j= dataGridView1->RowCount - 2 ;
    dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(0)); i++;
   dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(1)); i++;
   dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(2)); i++;
   dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(3)); i++;
dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(4)); i++;
dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(5)); i++;
//dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(6)); i++;
//dataGridView1[i,j]->Value = Convert::ToString(Datos->GetString(7)); i++;



}

}  

Registrar datos a una base de datos en Access 2003

  //APUNTADORES PARA LA  BASE DE DATOS
System::Data::OleDb::OleDbConnection^ Cnn;
System::Data::OleDb::OleDbCommand^ Micomando;
System::Data::OleDb::OleDbDataReader^ Datos;
System::String^ strconexion;
System::String^ strsql;
//CONEXION PARA LA BASE DE DATOS
strconexion="Provider=Microsoft.Jet.OLEDB.4.0; Data Source= 'ACCES2003.mdb' ";
                 Cnn = gcnew  OleDbConnection(strconexion);
Cnn->Open();
//SELECCION DE LA BASE DE DATOS

strsql = ("INSERT INTO contacto  (NOMBRE, APELLIDO, TELEFONO, ESTADO, CIUDAD, DIRECCION)  VALUES ('" +
                                       nombre->Text   + "', '" +
                                       apellido->Text   + "', '" +
telefono->Text     + "', '" +
estado->Text     + "', '" +
ciudad->Text     + "', '" +
       direccion->Text+"');");
Micomando= gcnew OleDbCommand(strsql,Cnn);
try {
Datos = Micomando->ExecuteReader();
MessageBox::Show("Actualizado");
// this->groupBox1->Visible=false;
     
     }
catch (System::Exception^ z)
{
MessageBox::Show("Error Actualizando "+ z->Message  );
}


Para que este codigo funcione debe declarar en la parte superior de la ventana

using namespace System::Data::OleDb;

Como mover un elemento del formulario en tiempo de ejecucion

Primero se declara las variables de la posicion original en este caso 

int i=242,j=8;

Luego dentro de un Evento KeyPress colocamos este codigo

 int tecla= e->KeyChar;
 
if ((tecla==97))
          {
                           //izquierda
   i=i-20;
this->pictureBox2->Location = System::Drawing::Point(i, j);
 this->x->Text = Convert::ToString(i);
       }
 if ((tecla==100))
          {
                           //Derecha
    i=i+20;
 this->x->Text = Convert::ToString(i);
this->pictureBox2->Location = System::Drawing::Point(i, j);
 }
 if ((tecla==119))
          {
                           //Arriba
j=j-20;
this->y->Text = Convert::ToString(j);
 
this->pictureBox2->Location = System::Drawing::Point(i, j);
 }
 if ((tecla==115))
          {
                           //abajo
    j=j+20;
this->pictureBox2->Location = System::Drawing::Point(i, j);
int score=500,total;
                                          }

En este caso estamos moviendo un pictureBox Hacia arriba, abajo, derecha e izquierda usando ASDW

Operaciones Basicas


Este programa constará de 5 eventos, 3 textBox , 3 labels, y 5 Botones.

Pasos para realizar el programa:

1.    Primero se debe crear cada uno de los eventos

2.    Luego se deben de Validar los campos para que el programa no realice ninguna función mientras que estén vacios para cada uno de los eventos.

3.    Luego se debe convertir los valores del tipo String al tipo Double

4.    Luego se deben calcular las operaciones para cada uno de los eventos

5.    Luego se debe dar el resultado




Control  de  Formularios

Todo formulario tiene propiedades que se pueden cambiar en tiempo de ejecución ya sea el color, tamaño, posición, entre otras cosas.
Algunas de estas funciones son

this->ClientSize = System::Drawing::Size(365, 300);
this->BackColor = System::Drawing::SystemColors::ActiveCaption;

La primera es el tamaño del formulario y la segunda es el color, estas propiedades puede ser cambiadas en tiempo de ejecucion mediante un evento que las actives, esta propiedad debe ser colocada dentro del evento ya que al activarse se ejecutara con los nuevos parametros cambiados.
Ejemplo

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
                   {

this->ClientSize = System::Drawing::Size(720, 600);
this->BackColor = System::Drawing::SystemColors::Red;

 }

Al activarse el evento Click cambiara el tamaño del formulario a las nuevas dimensiones y el color .

Codigo de Tablas de Multiplicar Visual C++ 2005


private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e)
                   {
                  double a,r;
                  int i;
                   a= Convert::ToDouble(this->textBox1->Text);
                        //El campo de texto es una cadena string originalmente
                        //Se necesita que sea un valor numerico
                        //Para que se pueda calcular el valor de la tabla
                  for(i=1;i<11;i++)
                   {
                     r=a*i;
                        this->listBox1->Items->Add(a +"x"+ i + "="+ r);

                   }

                   }


Para limpiar el contenido del listbox se utiliza Listbox1->Items->Clear();
Y para limpiar el contenido del textbox1 se utiliza textBox1->Clear();

ESTRUCTURAS DE CONTROL DEL PROGRAMA
Las Instrucciones de control de programa permiten alterar la secuencia normal de ejecución de un programa. Estas instrucciones se dividen en categorías:
 1.- Instrucciones Condicionales que en vcpp se implementan con las instrucciones if y else
b) Instrucciones de ciclos con • for • while • do…while INSTRUCCIÓN IF Es la instrucción condicional más usada en los diversos lenguajes de programación, su formato completo y de trabajo en CPP es cargar o asignar la variable de condición.
Declaración if (condición) 
{
 Grupo de instrucciones;
 }
Ejemplo if((textBox1->Text == "Roberto")&&(textBox2->Text == "Maria"))
 {
MessageBox::Show("Bienvenidos Roberto y Maria");
 }
 Resultado: Para que se cumpla esta condición el valor de los TextBox debe ser igual a Roberto y María si no no le hace nada.
 INSTRUCCIÓN IF- ELSE La función de la instrucción Else es complementar el If Declaración
 if (condición) {
 Grupo de instrucciones;
 } else
 {
 Grupo de instrucciones;
 } if((textBox1->Text == "Roberto")&&(textBox2->Text == "Maria"))
 { MessageBox::Show("Bienvenidos Roberto y Maria");
 } else {
 MessageBox::Show("Acceso Restringido");
 Close();
 }
 INSTRUCCION WHILE El Bucle while o bucle mientras es una estructura de la mayoría de los lenguajes de programaciónestructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera Ejemplo de contador con while 
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
 {
 int a; a=Convert::ToInt32(this->textBox1->Text);
 while(a<=10)
 {
 MessageBox::Show("El valor de a es : "+a+""); a++; }
 }

Primeros pasos en la programación

Variables en Programación Variable Una variable consiste en un elemento al cual le damos un nombre y le atribuimos un determinado tipo de información. Las variables pueden ser consideradas como la base de la programación. De este modo podríamos escribir en un lenguaje ficticio: a="perro" b="muerde" La variable que nosotros llamamos "a" posee un elemento de información de tipo texto que es "perro". Asimismo, la variable "b" contiene el valor "muerde". Podríamos definir una tercera variable que fuese la suma de estas dos: c=a+b Debido a que las variables contienen o apuntan a valores de tipos determinados, las operaciones sobre las mismas y el dominio de sus propios valores están determinadas por el tipo de datos en cuestión. Algunos tipos de datos usados: • Tipo de dato lógico. (Bool- Booleano) • Tipo de dato entero.(Int) • Tipo de dato de coma flotante (real, con decimales).(float-double) • Tipo de dato carácter.(char) • Tipo de dato cadena.(string) Conversiones de datos Booleano (Bool) Entero (Int) Flotante (double) Carácter (Char) Cadena de Carácter (String) Un valor Booleano es un valor binario que puede ser un 0 o un 1, esos números lógicos pueden ser transformados a un valor entero, luego a flotantes, luego a carácter y luego a cadena de carácter. Un valor Entero es un valor numérico pueden ser transformados a un valor flotante, luego a carácter y luego a cadena de carácter. Un valor Flotante son números con decimales (0.00) que puede ser transformado a una cadena de caracteres. Un valor charsolo almacena una letra y pueden ser transformados a una cadena de caracteres. Un valor Stringpuede almacenar una cadena de caracteres. Palabras Reservadas En programación, las palabras reservadas son aquel grupo de identificadores (palabras) que no pueden ser utilizadas por el usuario para nombrar a las variables, funciones, procedimientos, objetos y demás elementos de programación que cree. Generalmente esto se debe a que el propio lenguaje de programación ya las utiliza, por esta razón, las palabras reservadas no pueden ser empleadas como identificadores definidos por el usuario. Cada lenguaje de programación tiene su propio grupo de palabras reservadas, pero en general coinciden algunas de las siguientes: and, array, begin, case, const, default, do, else, end, file, for, function, goto, if, in, label, mod, not, of, or, repeat, return, then, to, type, until, void, while, etc. -