elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Inputbox en C# [ Recuerdos de VB ]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Inputbox en C# [ Recuerdos de VB ]  (Leído 24,376 veces)
Emperorxdevil

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Inputbox en C# [ Recuerdos de VB ]
« en: 16 Julio 2007, 17:02 pm »

 Si has programado en VB, te acordarás del tipico Inputbox para pedir datos.
 Pues bien, teniendo en cuenta que en C# no existe...
 Por qué no implementarlo ?
 
 Aqui les dejo el code de la clase Inputbox.
 Es estática (no hace falta construir el objeto para usarla) y devuelve datos tipo    string.

Su sintaxis es: Inputbox.Show(Titulo_Ventana,Titulo_Pregunta,Posicion)

 Se usa asi:

Código:

string n;
n=Inputbox.Show("Inputbox en C#", "Cual es su nombre ? ", FormStartPosition.CenterScreen);
Messagebox.Show(n);


Que lo disfruten !

Código:


public static class Inputbox
        {

         // Conserva esta cabecera
        //  Emperorxdevil 2007

            static Form f;
            static Label l;
            static TextBox t; // Elementos necesarios
            static Button b1;
            static Button b2;
            static string Valor;

            /// <summary>
            /// Objeto Estático que muestra un pequeño diálogo para introducir datos
            /// </summary>
            /// <param name="title">Título del diálogo</param>
            /// <param name="prompt">Texto de información</param>
            /// <param name="posicion">Posición de inicio</param>
            /// <returns>Devuelve la escrito en la caja de texto como string</returns>
            public static string Show(string title, string prompt, FormStartPosition posicion)
            {

                f = new Form();
                f.Text = title;
                f.ShowIcon = false;
                f.Icon = null;
                f.KeyPreview=true;
                f.ShowInTaskbar = false;
                f.MaximizeBox = false;
                f.MinimizeBox = false;
                f.Width = 200;
                f.FormBorderStyle = FormBorderStyle.FixedDialog;
                f.Height = 120;
                f.StartPosition = posicion;
                f.KeyPress += new KeyPressEventHandler(f_KeyPress);
               
                l = new Label();
                l.AutoSize = true;
                l.Text = prompt;


                t = new TextBox();
                t.Width = 182;
                t.Top = 40;

                b1 = new Button();
                b1.Text = "Aceptar";
                b1.Click += new EventHandler(b1_Click);


                b2 = new Button();
                b2.Text = "Cancelar";
                b2.Click += new EventHandler(b2_Click);

                f.Controls.Add(l);
                f.Controls.Add(t);
                f.Controls.Add(b1);
                f.Controls.Add(b2);

                l.Top = 10;
                t.Left = 5;
                t.Top = 30;

                b1.Left = 5;
                b1.Top = 60;

                b2.Left = 112;
                b2.Top = 60;

                f.ShowDialog();
                return (Valor);
            }

            static void f_KeyPress(object sender, KeyPressEventArgs e)
            {
                switch(Convert.ToChar(e.KeyChar)) {

                    case ('\r'):
                            Acepta();
                    break;;

                    case (''):
                            Cancela();
                    break;;
                }
            }
            static void b2_Click(object sender, EventArgs e)
            {
                Cancela();
            }
            static void b1_Click(object sender, EventArgs e)
            {
                Acepta();
            }
            private static string Val
            {

                get { return (Valor); }
                set { Valor = value; }
            }
            private static void Acepta() {
                Val = t.Text;
                f.Dispose();
            }
            private static void Cancela() {
                Val=null;
                f.Dispose();
            }


        }

Salu2


« Última modificación: 16 Julio 2007, 17:12 pm por Emperorxdevil » En línea

Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Re: Inputbox en C# [ Recuerdos de VB ]
« Respuesta #1 en: 21 Julio 2007, 12:33 pm »

Esta bien.


En línea

chimeco795

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Inputbox en C# [ Recuerdos de VB ]
« Respuesta #2 en: 17 Marzo 2010, 18:14 pm »

Me quito el sombrero ante ti, alguna ves pense que se podia hacer esto pero lo deje por la paz, ahora me encuentro con un master que lo hizo. Gracias (Por cierto me registre solo para agradecerte)
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Inputbox en C# [ Recuerdos de VB ]
« Respuesta #3 en: 17 Marzo 2010, 18:17 pm »

acabas de revivir un post de casi 3 años...
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Inputbox en C# [ Recuerdos de VB ]
« Respuesta #4 en: 17 Marzo 2010, 18:20 pm »

wow...alguien ya lo habia hecho. De todas formas hice el mio xD XD, el mio es mas actual (?

Bot para fotolog + InputBox en C#
« Última modificación: 17 Marzo 2010, 18:22 pm por raul338 » En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Inputbox en C# [ Recuerdos de VB ]
« Respuesta #5 en: 18 Marzo 2010, 01:34 am »

Jaja! esta muy bien!, pero, no se, yo creo que es un poco arcaico utilizarlo.. :P

De todos modos! felicidades, esta bastante bien programado.

9/10: 0.5 por usar el español, y 0.5 por no utilizar un prefijo para los miembros de la clase.

Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Viejos recuerdos.... (Xploits) « 1 2 3 »
Foro Libre
dimitrix 20 12,371 Último mensaje 17 Julio 2011, 23:20 pm
por dont'Exist
InputBox Windows
Programación C/C++
grandanh 1 1,906 Último mensaje 12 Diciembre 2014, 19:28 pm
por fary
Abre el baúl de los recuerdos con Retroj.am
Noticias
wolfbcn 0 1,341 Último mensaje 15 Febrero 2015, 02:02 am
por wolfbcn
Tengo recuerdos que no he vivido « 1 2 »
Foro Libre
Ali Baba 14 7,718 Último mensaje 29 Marzo 2018, 21:54 pm
por Orubatosu
Recuerdos TBT
Ingeniería Inversa
3L3CS4TC0D3R 0 1,830 Último mensaje 2 Junio 2023, 02:54 am
por 3L3CS4TC0D3R
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines