Ver Mensaje Individual
  #5 (permalink)  
Antiguo 05/10/2011, 09:01
Avatar de XYON126
XYON126
 
Fecha de Ingreso: abril-2006
Mensajes: 272
Antigüedad: 18 años
Puntos: 0
Respuesta: Crear ComboBox y TextBox desde VB6.0

Hola lokoman!

Entonces, si no he entendido mal, esta nueva opción seria crear tantas colecciones como controles quiera duplicar, por ejemplo:

Código vb:
Ver original
  1. Dim txt, lbl As Control
  2.  
  3. Set txt = Controls.Add("VB.TextBox", "Text1")
  4.  
  5. Set lbl = Controls.Add("VB.Label", "Label1")

¿y para poder controlar e identificar cada control, estos los deberia de tener tambien en otra matriz o como/que deberia hacer para poderles situar e identificar?.

Un saludo

PDTA: Por cierto el otro metodo lo he realizado y para VB6.0 me queda de coña pero no me funciona en VBA CATIA. Por si a alguien le interesa aqui posteo el codigo con TextBox y Label dinamicos y un boton para duplicar y otro para borrar.

Código vb:
Ver original
  1. Private Sub Form_Load()
  2.  
  3.     IND = lbl.UBound
  4.      
  5.     If IND = 0 Then cmd_BorrarLinea.Enabled = False
  6.    
  7. End Sub
  8. Private Sub cmd_BorrarLinea_Click()
  9.     'Dim IND As Integer
  10.      
  11.     'PARA EL LABEL
  12.        IND = lbl.UBound
  13.              
  14.         Unload lbl(IND)
  15.        
  16.                
  17.     'PARA EL TEXTBOX
  18.        IND = txt.UBound
  19.        
  20.         Unload txt(IND)
  21.        
  22.     'PARA EL COMMAND
  23.        cmd_NuevaLinea.Top = txt(IND - 1).Top - 45
  24.         cmd_BorrarLinea.Top = txt(IND - 1).Top - 45 'txt(IND).Height - 45
  25.      
  26.     'PARA LA FORMA
  27.        
  28.         Me.Height = Me.Height - cmd_NuevaLinea.Height
  29.         If IND = 1 Then cmd_BorrarLinea.Enabled = False
  30. End Sub
  31.  
  32.     Private Sub cmd_NuevaLinea_Click()
  33.         'Dim IND As Integer
  34.       cmd_BorrarLinea.Enabled = True
  35.     'PARA EL LABEL
  36.        IND = lbl.UBound + 1
  37.        
  38.         Load lbl(IND)
  39.        
  40.         lbl(IND).Left = 240
  41.         lbl(IND).Top = lbl(IND - 1).Top + lbl(IND - 1).Height + 45
  42.         lbl(IND).Width = lbl(IND).Width
  43.         lbl(IND).Caption = "Indice: " & IND
  44.         lbl(IND).Visible = True
  45.        
  46.     'PARA EL TEXTBOX
  47.        IND = txt.UBound + 1
  48.        
  49.         Load txt(IND)
  50.        
  51.         txt(IND).Left = 3480
  52.         txt(IND).Top = txt(IND - 1).Top + txt(IND - 1).Height + 45
  53.         txt(IND).Width = txt(IND).Width
  54.         txt(IND).Text = "Indice: " & IND
  55.         txt(IND).Visible = True
  56.        
  57.     'PARA EL COMMAND
  58.        cmd_NuevaLinea.Top = txt(IND).Top + 45
  59.         cmd_BorrarLinea.Top = txt(IND).Top + 45 'txt(IND).Height + 45
  60.        
  61.     'PARA LA FORMA
  62.        
  63.         Me.Height = Me.Height + cmd_NuevaLinea.Height
  64.        
  65.     End Sub


Última edición por XYON126; 05/10/2011 a las 09:09