Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642

    [VB.NET] - Creazione oggetti "on the fly"

    ciao,
    come si fa in basic.net a creare oggetti via codice senza inserirli fisicamente in fase di progettazione?

    esempio creare un bottone e mostrarlo sull oschermo,

    all'evento on_click di un bottone
    Paolo Spinoglio
    Milano

  2. #2
    devi crearlo dinamicamente...

    codice:
    dim but as new button
    but.name=MioBottone
    ' prosegui con l'assegnazione delle proprietà
    tuoform.controls.add(but)
    'poi x aggiungere l'evento
    addHandler but.click tua_routine_evento
    I database... la mia passione + o -

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    in vb.net puo' dichiararlo con withevents e quindi non dover fare un addhandler per tutti gli eventi che vuoi gestire. Puoi cmq guardare il codice generato automaticamente quando aggiungi un bottone, x capire meglio.
    Ans.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    ...ma form1.controls.add non esite mi sembra

    cmq

    ho fatto cosi, ma non esce nulla

    codice:
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim NewButton As New System.Windows.Forms.Button
            NewButton.Name = "NewButton"
            NewButton.Top = 100
            NewButton.Text = "click to process your request"
            NewButton.Left = 100
            NewButton.Visible = True
            NewButton.Width = 1000
            NewButton.Height = 500
            NewButton.Show()
        End Sub
    Paolo Spinoglio
    Milano

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    ..ops tutto ok, ora vediamo se riesco ad associargli qualche evento
    Paolo Spinoglio
    Milano

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    non riesco a creare l'evento mouse click

    codice:
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim button As New Button
            Me.Controls.Add(button)
            button.Text = "click to process your request"
            button.Top = 10
            button.Left = 10
            button.Width = 260
            AddHandler button.Click, button_click()
    
    
        End Sub
        Sub button_click() Handles Button.Click
    
        End Sub
    Paolo Spinoglio
    Milano

  7. #7
    hai provato con withevents come dice ans ?
    I database... la mia passione + o -

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    con addhandler devi utilizzare l'addressOf per la funzione, non deve avere la funzione l'handles e deve ricevere sempre come parametri sender e l'eventargs.
    Ans.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    withevents risolve parzialmente il problema poiche'
    come dice il debug
    lae variabili withevents, non possono essere tipizzate come matrici
    allora mi chiedo per creare 200 variabili withevents
    devo dimensionarle una ad una??
    mi sembra assurdo,
    non ce un equivalente di questo tipo?:


    dim withevents button(200) as new button
    non mi sembra possibile scrivere dim button1,button2ecc per 200 volte
    Paolo Spinoglio
    Milano

  10. #10
    in vb.net non esistono le matrici di controlli....
    I database... la mia passione + o -

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.