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 - luis456

#411
Ya funciona :)  y estoy tratando de eliminar repetidos con:)

.Distinct().ToArray() ' Eliminar duplicados pero no va
Lo de ordenar ya se como se hace :)



Código (vbnet) [Seleccionar]
Public Class Form1
   Dim maximum As Short = 49
   Dim x As Integer = 0
   Dim Número As Double
   Private TextBoxes As TextBox() = {Nothing}
   Private Result1 As Int32(), Result2 As Int32()
   Private _textBox As Object
   Private Property ListBox1Count As Integer

   Private Sub FrmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
       Me.ControlBox = False ' Elimino todos los controles del formulario
   End Sub

   Private Property Calcular As Object

   Private Property TextBox(ByVal TextBoxCount As Short) As Object
       Get
           Return _textBox
       End Get
       Set(ByVal value As Object)
           _textBox = value
       End Set
   End Property

   Public Sub solonumeros(ByRef e As System.Windows.Forms.KeyPressEventArgs)
       ' evitar letras
       If Char.IsDigit(e.KeyChar) Then
           e.Handled = False
       ElseIf Char.IsControl(e.KeyChar) Then
           e.Handled = False
       ElseIf Char.IsSeparator(e.KeyChar) Then
           e.Handled = False
       Else
           e.Handled = True
       End If

   End Sub


   ReadOnly Property Num1 As Int32
       Get
           Return CInt(TextBox1.Text)
       End Get
   End Property

   ReadOnly Property Num2 As Int32
       Get
           Return CInt(TextBox2.Text)
       End Get
   End Property
 

   Private Sub Sumar(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click

       Result1 = {Num1 + 10, Num1 + 20, Num1 + 30} _
                 .Distinct().ToArray ' Elimino duplicados

       Result2 = {Num2 + 10, Num2 + 20, Num2 + 30} _
                 .Distinct().ToArray ' Elimino duplicad


       Array.Sort(Result1) : Array.Sort(Result2) ' El número no está repetido:

       Dim Results As IEnumerable(Of Integer) =
           Result1  ' El número no está repetido.Concat(Result2)  

     

       For X As Integer = 0 To Results.Count - 1
           
           Dim Items1 As List(Of String) = ListBox1.Items.Cast(Of String)().ToList
           Items1.Add("  ")


           Dim Items2 As List(Of String) = ListBox2.Items.Cast(Of String)().ToList
           Items2.Add("  ")

           Dim CombinedItems As List(Of String) = Items1.Concat(Items2).ToList


           ListBox3.Items.AddRange(CombinedItems.ToArray)



           Select Case Results.Where(Function(n) n = Results(X)).Skip(1).Any

               Case False ' El número no está repetido en ninguna "linea"
                   ' Así que colocamos el número en el Textbox
                   Try
                       ListBox1.Items.Add(CStr(Results(X)))


                       ' TextBoxes(TextBoxCount).Text = CStr(Results(X))
                   Catch ex As Exception
                       Throw New Exception(ex.Message & ex.StackTrace)
                   End Try

                 

           End Select


       Next X
       ' -------segunda

       Dim Resultss As IEnumerable(Of Integer) =
           Result2 ' .

       

       For X As Integer = 0 To Resultss.Count - 1



           Select Case Resultss.Where(Function(n) n = Resultss(X)).Skip(1).Any

               Case False
                   Try
                       ListBox2.Items.Add(CStr(Resultss(X)))

                   Catch ex As Exception
                       Throw New Exception(ex.Message & ex.StackTrace)
                   End Try

                   
           End Select
           
       Next X
     
   End Sub
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

   End Sub
 
End Class


Luis
#412
Cita de: ElektroZoider en 29 Diciembre 2013, 02:32 AM
Al final voy a acabar odiando los Listbox :silbar:

¿
Saludos

Bien la idea es que me muestre en un tercer lisbox los datos que tienen estos dos primeros y bueno seria agruparlos en un tercero pero estoy tratando de hacer funcionar tu codigo pero me da este error " se esperaba una declaracion "

Bien se que es declarar al principio y con
Dim Items1
Dim Items2

los declaro y si pasa, pero tambien  me pide declarar el listbox3 y ai si quedo parado ;( he buscado pero no encuentro como declaralo


Gracias

Luis






#413
Buaaaaaaa ya nadie quiere este viejo :)

luis
#414
Hola ando buscando una forma corta de combinar (no sumar ni adicionar) todo el contenido de dos lisbox en un otro sin que haya duplicados en grupos de cuatro resultados esto es si hay por ejemplo entre los dos lisbox 12 numeros que se muestren grupos de cuatro esto seria 3 resultados de cuatro números cada uno


Gracias :)

Felices fiestas a todos

Luis
#415
Cita de: ElektroSoft en 20 Diciembre 2013, 09:38 AM
Aquí mismo tienes cientos de ejemplos, los cuales puedes exprimir con el uso de estos métodos de la Class Array y/o con estos otros métodos de LINQ donde además aquí puedes descargar 100 + 1 ejemplos.

Saludos


:) Gracias ElektroSoft

Luis



#416
Alguien podria facilitar o decirme donde puedo conseguir buenos tutoriales con ejemplos basicos (para neofitos jeje) explicados para trabajar con arrays ?

Gracias

Luis
#417
Cita de: ElektroSoft en 19 Diciembre 2013, 07:58 AM
¿Que ha sido de esto que te comenté?, dijiste que ya lo habias solucionado de esta manera:

Saludos

Si pero no me muestra todos los resultados  y muy seguidos los numeros ?
ademas lo quiero para una sola variable y no con la concatenacion que me hiciste


luis
#418
Hola ya cuando pregunto es que me come el coco :)

Tengo un lixbox y me muestra los resultados en vertical y por probar quiero saber si se puede en horizontal

ahora me los muestra a si

25
45
68
75
78
79
80
88
99

y quiero saber si se puede mostrar de esta forma ?

25 45 68 75 78 79 80 88 99

la funcion que uso es esta

Select Case Results.Where(Function(n) n = Results(X)).Skip(1).Any

                Case False ' El número no está repetido en ninguna "linea"
                    ' Así que colocamos el número en el Textbox
                    Try
                        ListBox1.Items.Add(CStr(Results(X)))


                        ' TextBoxes(TextBoxCount).Text = CStr(Results(X))
                    Catch ex As Exception
                        Throw New Exception(ex.Message & ex.StackTrace)
                    End Try

                    ' Case True ' El número está repetido en alguna de las "lineas"
                    ' Así que escribimos el número "máximo" en el textbox
                    ' TextBoxes(TextBoxCount).Text = -CStr(maximum)

            End Select
            ' TextBoxCount += 1

        Next X



Saludos

Luis






#419
Cita de: EleKtro H@cker en 12 Diciembre 2013, 08:29 AM
No creo que por usar una versión Express afecte de tal forma como para restringir el acceso a las propiedades de un control ...vaya, pero tampoco voy a poner la mano en el fuego por Microsoft xD.

Quizás símplemente las propiedades estén ocultas (por algún extraño motivo) pero sigan accesibles, ¿no puedes modificar las propiedades usando código?.

Una alternativa al listbox es usar un Listview y modificarle la propiedad View a "LargeIcon" para hacerlo horizontal.

Otra (posible) alternativa sería descargar/instalar algún Listbox de terceros y comprobar si tiene las propiedades que le faltan a tu ListBox por defecto:
-> http://lmgtfy.com/?q=codeproject+listbox+user+control

Saludos




Listo y gracias elektro

Ahora a por otra cosa :)

Luis

Edito: jejej en propiedades de herramientas no las habia puesto todas :)


#420
Cita de: EleKtro H@cker en 11 Diciembre 2013, 19:39 PM
WindowsForms?


Saludos

WindowsForms ,    sera porque uso la version 2010 express ?

luis