Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2011
    Messaggi
    119

    [VBNET] Simulare l'evento click

    Buongiorno.
    Ho un'array di 5 bottoni creato a runtime al quale ho aggiunto l'handler click e fin qui tutto ok.
    Se clicco su un pulsante riesco a fare quello che devo.
    Ma se per esempio avessi il numero del bottone da premere in una variabile come posso invocare l'evento click ?

    Creo i bottoni in una tableLayout panel 1 Col x 5 Row

    codice:
                For i As Integer = 0 To btnCamsArr.Length - 1
                    btnCamsArr(i) = New System.Windows.Forms.Button
                    btnCamsArr(i).TextAlign = ContentAlignment.MiddleCenter
                    btnCamsArr(i).Text = CStr(i + 1)
                    btnCamsArr(i).Font = New System.Drawing.Font(btnInBArr(i).Font, FontStyle.Bold)
                    btnCamsArr(i).BackColor = Color.DimGray
                    btnCamsArr(i).Name = CStr("btnCam" & i)
                    tblCams.Controls.Add(btnCamsArr(i), i Mod CamsRow, i \ CamsCol)
                    AddHandler btnCamsArr(i).Click, AddressOf btnCamsClick
                Next
    L'evento click

    codice:
        Public Sub btnCamsClick(ByVal sender As Object, ByVal e As System.EventArgs)
            For i As Integer = 0 To btnCamsArr.Length - 1
                If btnCamsArr(i) Is sender Then
                    btnCamsArr(i).BackColor = Color.Red
                    CurrentCamSelect = i
                Else
                    btnCamsArr(i).BackColor = Color.DimGray
                End If
            Next
            Call ReadIni()
        End Sub
    Come faccio a simulare il click avendo in una variabile un valore compreso tra i bottoni creti ?

    call btnCamsClick(?,?)

    Grazie, Alberto

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non è più semplice mettere tutto il codice del click in una funzione e chiamarla da dove ti serve?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2011
    Messaggi
    119
    Si ma mi piacerebbe fare qualcosa di leggero e non ripetitivo

    Sulla pressione di un pulsante che fa altro faccio così e viene premuto il pulsante 0 perchè sono
    su un controllo che possiede l'argomento e:

    call btnCamsClick(btnCamsArr(0),e)

    Abbi pazienza ma se sono in una funzione che non accetta eventi dal mouse come come glielo passo e ?

    Grazie, Alberto

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se non ti serve non passi nulla

    btnCamsClick(btnCamsArr(0), Nothing)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2011
    Messaggi
    119
    Cavolo ... mi stavo scervellando su cosa mettere tralasciando nothing !!

    Grazie mi hai risolto !!

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma avresti anche potuto scrivere semplicemente

    call btnCamsClick(btnCamsArr(0), New System.EventArgs)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.