Lvorare con i controlli utente

sabato 28 gennaio 2012 - 14.16
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows 7  |  Visual Studio Express

fiodavid Profilo | Newbie

Ciao a tutti,


Ciao a tutti,

vorrei capire il funzionamento del CONTROLLO UTENTE, per poi applicarlo a un programma di collaudo automatico di schede elettroniche che sto sviluppando al lavoro, nel quale al momento viene collaudata una scheda singolarmente, ma che poi diventerà un programma che collauda 8 schede contemporaneamente e che al termine del quale, dovrà visualizzare tramite delle appositi spie (all'interno del programma) l'esito del collaudo di ogni singola scheda e pensavo di realizzare il tutto tramite un "controllo utente" appunto.

Grazie a tutti per le risposte

Ciao
fiodavid

P.S.= sapreste darmi dei link di tutorial che spiegano il funzionamento e la creazione dei CONTROLLI UTENTE (io sto utilizzando VB 2010 Express)

Vinsent Profilo | Senior Member

Mi sa che hai sbagliato sezione, questa è per VB6..
Ho capito come usare/creare i controlli utente da poco quindi scusa se c' è qualche errore...
Comunque, puoi trovare un buon esempio qui: http://msdn.microsoft.com/it-it/library/system.windows.forms.usercontrol.aspx
Sulla pagina dice di creare un dll...ma puoi anche fare così: crea un nuovo progetto Windows Form ed aggiungi una classe. In quest' ultima cancella tutto e fai copia/incolla con il codice dell' esempio, quindi compila. Passa alla scheda progettazione della form, nella casella degli strumenti troverai un nuovo componente "MyCustomerInfoUserControl" che puoi aggiungere alla form esattamente, come ad esempio, un button per tutte le volte che vuoi, i controlli che aggiungerai sulla form si chiameranno "MyCustomerInfoUserControl1", "MyCustomerInfoUserControl2",ecc...
Nell' esempio sopra tutti i controlli vengono creati e posizionati via codice, se invece aggiungi un "controllo utente" da VS2010 puoi aggiungerli in modalità progettazione.
Un' altro metodo e quello di ereditare un controllo standard(Inherits), il codice sotto è una Label con lo sfondo lampeggiante dove bisogna passargli l' intervallo del lampeggio, i colori e impostare se devono seguire la sequenza di immissione o a caso:
sempre in una classe vuota:
Public Class label_lampeggiante Inherits Label Public intervallo_lampeggio As Integer Public colori As New ArrayList Public lampeggio_random As Boolean Dim rnd As New Random Private WithEvents timer_lampeggio As New Timer Dim contatore As Integer Public Sub avvio() If lampeggio_random = True Then AddHandler timer_lampeggio.Tick, AddressOf lampeggio_sfondo_random End If If lampeggio_random = False Then AddHandler timer_lampeggio.Tick, AddressOf lampeggio_sfondo_InSeq End If timer_lampeggio.Interval = intervallo_lampeggio timer_lampeggio.Start() End Sub Private Sub lampeggio_sfondo_random() contatore = rnd.Next(0, colori.Count - 1) Me.BackColor = colori(contatore) End Sub Private Sub lampeggio_sfondo_InSeq() contatore = contatore + 1 If contatore = colori.Count - 1 Then contatore = 0 End If Me.BackColor = colori(contatore) End Sub End Class

Compilare e aggiungere alla form "label_lampeggiante" dalla casella degli strumenti, nel codice della form scrivere:
Public Class Form1 Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Label_lampeggiante1.intervallo_lampeggio = 500 Label_lampeggiante1.colori.Add(Color.White) Label_lampeggiante1.colori.Add(Color.Yellow) Label_lampeggiante1.colori.Add(Color.Green) Label_lampeggiante1.colori.Add(Color.Blue) Label_lampeggiante1.colori.Add(Color.Red) Label_lampeggiante1.colori.Add(Color.Purple) ' ecc.... Label_lampeggiante1.lampeggio_random = False Label_lampeggiante1.avvio() End Sub End Class

Per non allungare troppo il codice e il post ho tralasciato la parte per aggiungere l' utilizzo dell' intellisense di VS2010.
ciao









Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5