Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Eleкtro

#2601
Cita de: feedf en 30 Marzo 2017, 01:06 AM" osea que dentro del objeto creamos una variable privada para que no sea vista por todo el programa, pero la que interactua para leer y escribir en esa variable es la propiedad con los gets y los sets"

Exacto.

Si tienes una propiedad con nombre "MiPropiedad" y un valor de apoyo o backing field con nombre "MiVariable", cuando tu haces esto:
Código (vbnet) [Seleccionar]
Sub()...
   MiPropiedad = Valor
End Sub

...El método Get de "MiPropiedad" se encarga de validar y asignar el valor a "MiVariable".

No le des demasiadas vueltas al tema, una propiedad la utilizarías practicamente de la misma manera que una variable (excepto por el Get y el Set, pero no te obsesiones con eso) y no importa demasiado si decides usar variables o propiedades ...excepto en casos específicos donde es recomendable (o es la única opción) el uso de propiedades.

Saludos!
#2602
Cita de: feedf en 30 Marzo 2017, 00:40 AMconoces algun video que explique bien el tema y como usarla y implementarlas?

¿Video tutorial?, no, pero todo lo que necesitas saber se encuentra en la MSDN:


Saludos!
#2603
Cita de: Edierb en 30 Marzo 2017, 00:18 AMeste código que me das los ingreso en un form nuevo o lo ingredo en cada uno de los form donde tengo las preguntas.

Ese código debes añadirlo tan solo al Form principal, o mejor dicho al form que vayas a usar para mostrar los demás forms que contengan "las preguntas".

EDITO:
Por cierto, en el código que te mostré me acabo de dar cuenta que escribí mal el nombre del botón:
Private Sub Siguiente_Click(sender As Object, e As EventArgs) Handles Button.Click
Debería ser así:
Private Sub Siguiente_Click(sender As Object, e As EventArgs) Handles Siguiente.Click
...lo comento para evitarte posibles confusiones.

¡Saludos!
#2604
Foro Libre / Re: Teoria de las 24 horas ...
29 Marzo 2017, 23:48 PM
Cita de: Constance en 29 Marzo 2017, 23:30 PM
La Naturaleza no nos ha hecho para pasar horas y horas y horas con la misma persona si no para Diversificar: un rato en casa con la family, otro en el trabajo con los compis , otro con los amigos tomando una cervezita, otro con la pareja (el que tenga) , otro a solas con nosotros mismos  y así no tendremos que afrontar diferencias, y por tanto nos ahorramos el stress que eso conlleva

En mi opinión lo que expones es una observación vista desde una perspectiva bastante limitada por que solo lo estás enfocando al día a día de la vida moderna del hombre, es decir a los problemas sociales en la gran ciudad, pero eso no ha sido obra de la naturaleza sino del ser humano, cimiento tras cimiento, ha sido el "progreso" de la sociedad quien nos ha echo así para acabar convirtiéndonos en los seres vivos tan inconfomistas que somos a la hora de compartir tiempo con los demás y acabar sobrepasando "la burbuja transparente" de esa persona.

En los paises tercer mundistas allí conviven todos con todos muy juntitos los unos de los otros a todas las horas del día y nadie se queja oye.

¡Saludos!
#2605
Cita de: Edierb en 29 Marzo 2017, 21:32 PM
bueno el código es este.

Código (vbnet) [Seleccionar]
Private Sub Siguiente_Click(sender As Object, e As EventArgs) Handles Siguiente.Click
       form3.Show()
       Me.Hide()
   End Sub

este es el código que tengo para pasar de un form a otro, las preguntas las tengo en form independientes.
lo que quiero es que cada ves que clike en el boton los form no salgan en orden si no en forma aleatoria y que no se repitan los que ya han salido.

Bueno, una forma óptima de hacerlo sería mediante el uso de una pila:

Código (vbnet) [Seleccionar]
' Una colección enumerable para especificar cuales forms queremos procesar/mostrar.
Private forms As IEnumerable(Of Form) = {Form2, Form3, Form4, Form5, etc...}

' Una pila en la que iremos añadiendo una referencia de los forms de manera desordenada (aleatoria).
Private ReadOnly stackForm As New Stack(Of Form)

' Una instancia de la class Random que utilizaremos para generar secuencias numéricas aleatorias.
Private ReadOnly rand As New Random()

Private Sub Siguiente_Click(sender As Object, e As EventArgs) Handles Siguiente.Click

   ' Si la pila de forms está vacía...
   If (stackForm.Count = 0) Then
       ' Ordenamos la secuencia enumerable de forma aleatoria.
       Me.forms = (From x As Form In forms Order By rand.Next())
       ' e iteramos la secuencia resultante para ir añadiendo todos los forms a la pila.
       For Each f As Form In Me.forms
           stackForm.Push(f)
       Next f
   End If

   ' Eliminanos el siguiente elemento de la pila para obtener el siguiente Form.
   Dim nextForm As Form = stackForm.Pop()
   ' Ocultamos el Form principal, mostramos el form obtenido, y etcétera...
   Me.Hide()
   nextForm.ShowDialog(Me)
   Me.Show()

End Sub


Si tienes cualquier duda al respecto, pregunta.

¡Un saludo!
#2606
Cita de: Orubatosu en 29 Marzo 2017, 19:58 PMmuchos animales empiezan a comer con la victima viva, para ellos no es otra cosa que alimento.

Ya que se ha hablado de leones y de comerse a la víctima aun viva... existe una leyenda urbana muy extendida que afirma que los leones siempre matan a sus presas antes de comérselas y además de eso cuentan que lo hacen por compasión o por respeto por la naturaleza o respeto por la vida o cosas así. Todo eso es completamente falso, para empezar un león cuando ha cazado a un animal solo matará a su víctima si ésta muestra alguna señal de resistencia cuando el león se dispone a devorar vivo al animal, pero si la presa no opone resistencia alguna entonces el león se comerá vivo al animal sin asfixiarlo primero; esto podemos verlo por ejemplo en las gacelas que se quedan en shock, en completa parálisis, inmóviles despues de haber sido cazadas por un león, y se empiezan a comer vivo al animal puesto que no opone resistencia.
En resumen, el león solo mata a su presa en el caso de que la presa oponga resistencia alguna que pueda resultarle incómoda al león para comérselo tranquílamente, así es la cruel realidad.

Cita de: Orubatosu en 29 Marzo 2017, 19:58 PMDe hecho el hombre, ese ser que "inventó" la ética, la piedad, la moral y todo eso, es el mayor depredador del planeta a todos los niveles.

Ni que lo digas... el ser humano, inventor del concepto Ética, y al mismo tiempo inventor de miles de cosas muy poco éticas...

[youtube=640,360]https://www.youtube.com/watch?v=QBYyUi-Nkts[/youtube]

PD: Para los despistados, se trata de Julius Robert Oppenheimer, el inventor de la Bomba Atómica, el destructor de mundos...
#2607
Cita de: Edierb en 29 Marzo 2017, 18:37 PM
Hola muchachos buen día.
Hola.

Cita de: Edierb en 29 Marzo 2017, 18:37 PMBueno el asunto es el siguiente, estoy creando un cuestionario con 5 preguntas una pregunta por cada forma

Pues lo primero de todo: muestra el código -y aclara si tu duda es sobre VB6, o más bien VB.NET.

¡Saludos!
#2608
Cita de: Constance en 29 Marzo 2017, 16:29 PMVen a los leoncillos, en la madriguera, y no los rescatan . Tio, sabes que el león los va a matar, deja la cámara, deja de grabar y salva la vida de esos bebés ...
Me hierve la sangre cuando veo esos leoncillos babys ......que van a morir y nadie hace nada

Está complétamente prohibido que un reportero altere el orden de la naturaleza en ese sentido. No sé si estará prohibido por ley, pero si por la productora, hay como una especie de pacto en ese oficio, ya que para la mayoría de la gente profesional (científica), lo ético no es rescatarlos, sino NO intervenir y que la naturaleza siga su curso como sea que deba seguir, por mucho que a nosostros, los emocionales seres humano nos duela contemplar esa matanza.

Te cagarías por la pata abajo si vieras un documental donde sale un cachorro de león de no más de 6 meses, que jugando se "tropieza" con una "astilla" muy grande de un árbol, se la clava por la pata trasera hasta llegar al hueso y se queda ahí el animal, colgando... a solo 10 centímetros del suelo utilizando sus patas delanteras para apoyarse y hacer fuerza para intentar salir, pero sin poder salir... con toda la columna por la parte de atrás rota, sufriendo, sin poder articular las patas traseras para salir de esa...trampa de la naturaleza, y así, durante laaaargas horas, hasta que al final muere de agotamiento y de hambre. Habria muerto de todas formas aunque hubiera conseguido salir... con las piernas traseras rotas, pero fue una forma muy cruel, lenta y dolorosa de morir. Y todo esto grabado por un reportero.
Si quieres te busco el nombre del documental.
#2609
No he visto el video pero he visto videos como esos a pares, también sucede con algunas especies de arañas.

Constance, piensa que el suministro alimenticio más cercano para la hembra al momento de aparearse, es el macho con el que se aparea, y una hembra insecto no se mueve por sentimientos humanos, sino por instintos, debe darle prioridad al bien estar y la prosperidad de los huevos/crias...

Eso sería un motivo, la supervivencia. No digo que el motivo lo justifique, para mi sigue siendo un comportamiento errático (casi malvado diría yo) de la naturaleza, un... "motivo imperfecto".
#2610
.NET (C#, VB.NET, ASP) / Re: Toolbox en C#
29 Marzo 2017, 13:24 PM
Hola.

Ya que no has especiicado a que tecnología te refieres, voy a asumir que es WindowsForms.

Cita de: Nolohagan en 29 Marzo 2017, 10:08 AMpero como hago para agregarle a la Treeview por ejemplo un ListBox y despues arrastrar ese ListBox a otra parte?

Lo primero sería tan sencillo como declarar e instanciar un ListBox, y posteriórmente añadirlo a la colección de controles del TreeView:

Código (csharp) [Seleccionar]
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Windows.Forms;
using System.Security.Permissions;

[DisplayName("MyTreeView")]
[Description("A extended TreeView control.")]
[DesignTimeVisible(true)]
[DesignerCategory("UserControl")]
[ToolboxBitmap(typeof(TreeView), "TreeView.bmp")]
[ToolboxItem(true)]
[ToolboxItemFilter("System.Windows.Forms", ToolboxItemFilterType.Require)]
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
public class MyTreeView : TreeView, IDisposable {

   [Browsable(true)]
   [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
   [Category("Child Controls")]
   public ListBox ListBox {get { return this.listBoxB; }}
       private ListBox listBoxB; // Backing field.

   [DebuggerStepThrough()]
   public MyTreeView() {
       this.SuspendLayout();
       this.listBoxB = new ListBox();
       this.Controls.Add(this.listBoxB);
       this.listBoxB.Show();
       this.ResumeLayout(performLayout: false);
   }

   [DebuggerStepThrough()]
   protected override void Dispose(bool disposing) {
       if ((disposing)) {
           if ((this.listBoxB != null)) {
               this.listBoxB.Dispose();
               this.listBoxB = null;
           }
       }

       base.Dispose(disposing);

   }

}





Para llevar a cabo lo segundo, no puedo mostrarte un ejemplo, basicamente por que es algo que requiere horas, dias o incluso semanas de trabajo y dedicación (no voy a hacerle el trabajo a otra persona). Se necesita una comprensión mínima sobre la jerarquía de ventanas Win32, el sistema de mensajería de Windows, el dibujado mediante GDI+, y mucha práctica adquirida previamente si se quiere intentar crear un control de usuario persoanlizado que cumpla requisitos complejos, de lo contrario sería mejor no intentarlo hasta haber aprendido más sobre el tema.

En la MSDN tienes un montón de guías y ayudas como éstas de aquí abajo para aprender a crear un control de usuario (y controlar el dibujado):

De todas formas...¿por qué motivo exactamente es que quieres añadir un ListBox a un TreeView?, quizás no resultase necesario hacerlo, o quizás te bastase solo con utilizar/subclasear un ListBox..

Bueno, con respecto a lo de "arrastrar el control a otra parte", no sé que significa "a otra parte", no soy adivino, intenta dar explicaciones claras y concisas para no dar a lugar a posibles mal interpretaciones.
De todas formas te puedo decir que para implementar la funcionalidad de arrastrar y soltar necesitarías empezar por controlar los eventos del ListBox (OnMouseDown, OnMouseUp y OnMouseMove) para implementar la funcionalidad de poder arrastrar el control, y en realidad ya no habría mucho más que hacer. Luego, para "arrastrar a otra parte", imagino que a otra parte dentro del área cliente del control padre del ListBox, lo suyo tal vez sería interceptar y procesar por tu cuenta (algunos de) los mensajes de ventana del ListBox como del TreeView mediante el método WndProc para determinar la ubicación del ListBox, computar esa ubicación a las coordenadas del área cliente del TreeView, y por último decidir que hacer (e implementar algoritmos para poder hacerlo) en base a esas coordenadas y otros factores de evaluación que tú decidas. Suena complejo, lo es...un poco.

Te puedo ahorrar la tarea de implementar una funcionalidad de arrastrar y soltar en el ListBox, con esta clase de uso genérico que desarrollé hace un tiempo:


...No es necesario traducirlo a C#, siempre puedes compilarlo a una libreria dinámica o dll.
En caso de que decidas usar mi metodología, la que he compartido en esas clases, entonces es posible que la implementación de esas clases requiera que les hagas ciertas pequeñas modificaciones (ej. eliminar el namespace, eliminar imports) para poder adaptarlo, ya que esas clases las he extraido directamente de mi Framework de pago para .NET Framework, cuyo nombre es "ElektroKit", el cual se puede encontrar a la venta por un módico precio en https://codecanyon.net/ buscando por el nombre ElektroKit.... solo lo menciono para aclarar los motivos del por qué el código está así, y de paso por si esto resulta de tu interés o del interés de alguna ota persona...

¡Saludos!