• Domingo 22 de Diciembre de 2024, 14:29

Autor Tema:  Novato en C#  (Leído 3400 veces)

alvarcardona29

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: co
    • Ver Perfil
Novato en C#
« en: Miércoles 25 de Agosto de 2010, 18:38 »
0
Hola a todos estoy aprendiendo C# express 2010 y estoy siguiendo el tutorial que hay en la pagina de microsoft para hacer el visor de imagenes, ya lo he terminado y funciona, pero quiero hacer unas modificaciones y no se como por eso recurro a uds, lo primero que quiero es que antes de cargar una imagen el botón borrar aparezca deshabilitado, y cuando la imagen este cargada se habilite y el botón mostrar imagen se deshabilite, y lo segundo es que cuando cargue tres imágenes y las borre, se deshabiliten todos los botones menos el botón cerrar, espero sus respuestas gracias por su atencion, adjunto imagen del visor de imágenes y código.

Código: Text
  1.  
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Windows.Forms;
  10.  
  11. namespace PictureViewer
  12. {
  13.     public partial class Form1 : Form
  14.     {
  15.         public Form1()
  16.         {
  17.             InitializeComponent();
  18.         }
  19.  
  20.         private void BtnMostrar_Click(object sender, EventArgs e)
  21.         {
  22.            
  23.             if (openFileDialog1.ShowDialog()==DialogResult.OK)
  24.             {
  25.                 pictureBox1.Load(openFileDialog1.FileName);
  26.             }
  27.                
  28.          
  29.         }
  30.  
  31.         private void BtnBorrar_Click(object sender, EventArgs e)
  32.         {
  33.            
  34.             pictureBox1.Image = null;
  35.         }
  36.  
  37.         private void BtnColor_Click(object sender, EventArgs e)
  38.         {
  39.            
  40.             if (colorDialog1.ShowDialog() == DialogResult.OK)
  41.                 pictureBox1.BackColor = colorDialog1.Color;
  42.         }
  43.  
  44.         private void BtnCerrar_Click(object sender, EventArgs e)
  45.         {
  46.            
  47.             this.Close();
  48.         }
  49.  
  50.         private void checkBox1_CheckedChanged(object sender, EventArgs e)
  51.         {
  52.            
  53.             if (checkBox1.Checked)
  54.                 pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
  55.             else
  56.                 pictureBox1.SizeMode = PictureBoxSizeMode.Normal;
  57.         }
  58.     }
  59. }
  60.  
  61.  
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
« última modificación: Jueves 26 de Agosto de 2010, 22:51 por alvarcardona29 »

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Novato en C#
« Respuesta #1 en: Miércoles 25 de Agosto de 2010, 19:21 »
0
Primero que nada cuando publiques codigo encierralo en etiquetas [ code] [ /code] (sin espacios en los corchetes), ya que mejora la legibilidad del codigo.

Los botones tienen una propiedad llamada Enabled que puede ser true si el boton esta habilitado, y false si el boton no esta habilitado, por defecto Enabled es true, o sea, boton habilitado. Si quieres deshabilitarlo cambialo a false, lo que puedes hacer es que primero dentro del constructor del formulario habilitas/deshabilitas los botones que quieras, y despues dentro del evento click del boton cambias el Enabled del boton que quieras de false a true y viceversa, pongo solo algunos ejemplos:

Código: C#
  1.  
  2.         public Form1()
  3.         {
  4.             InitializeComponent();
  5.             BtnBorrar.Enabled = false;
  6.             BtnMostrar.Enabled = true;
  7.         }
  8.  
  9.         private void BtnMostrar_Click(object sender, EventArgs e)
  10.         {
  11.             //Mostrar el cuadro de diálogo Abrir archivo. Si el usuario hace clic en Aceptar, se carga
  12.             //la imagen que el usuario escojio
  13.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  14.             {
  15.                 pictureBox1.Load(openFileDialog1.FileName);
  16.                 BtnBorrar.Enabled = true;
  17.                 BtnMostrar.Enabled = false;
  18.             }
  19.         }
  20.  
  21.  

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

alvarcardona29

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: co
    • Ver Perfil
Re: Novato en C#
« Respuesta #2 en: Miércoles 25 de Agosto de 2010, 19:29 »
0
Gracias amigo Ahora solo me falta el otro punto que es que cuando cargue tres imagenes se desactiven todos los botones menos el de cerrar como hago eso la verdad es la primera vez que uso c#.

PD:Gracia por lo del [code] no sabia jejejeje

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Novato en C#
« Respuesta #3 en: Miércoles 25 de Agosto de 2010, 23:25 »
0
Aplica lo mismo que te explique antes, usa la propiedad Enabled para deshabilitar los botones, solo necesitas añadir a Form1 una variable contador de tipo entero, inicializada con cero, que guarde las veces que borras una imagen y luego en el evento click del boton borrar (o sea en BtnBorrar_Click), incrementas esa variable, y preguntas (if) si el contador es igual a 3, si es verdadero, quiere decir que borraste tres imagenes, y entonces deshabilitas los botones menos el de cerrar.

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

alvarcardona29

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: co
    • Ver Perfil
Re: Novato en C#
« Respuesta #4 en: Jueves 26 de Agosto de 2010, 01:42 »
0
Gracias amigo,  ya funciona perfectamente muchas gracias