Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPrivate Sub btn_Enregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Enregistrer.Click SaveFileDialog.FileName = txt_NomClient.Text SaveFileDialog.Filter = "Fichiers scg|*.scg" SaveFileDialog.InitialDirectory = "" If SaveFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then Dim sw As New System.IO.StreamWriter(SaveFileDialog.FileName) sw.WriteLine(txt_nom.Text) sw.WriteLine(txt_adresse.Text) sw.WriteLine(txt_codepostal.Text) sw.WriteLine(txt_ville.Text) sw.WriteLine(txt_telephone.Text) sw.WriteLine(txt_Marque.Text) sw.WriteLine(txt_Model.Text) sw.WriteLine(txt_Motorisation.Text) sw.WriteLine(txt_datedemiseencirculation.Text) sw.WriteLine(txt_datecontroletechnique.Text) sw.WriteLine(txt_Prochaincontroletechnique.Text) sw.Flush() End If End Sub
Imports System.IO Public Class FormNiblon Private Structure dataclient Public informationclient() As String End Structure Private labelname() As System.Windows.Forms.Label Private labelmessage() As System.Windows.Forms.Label Private listclient() As dataclient Private myfont As New Font("arial", 12, FontStyle.Bold, GraphicsUnit.Pixel) Private listfiles() As String Private Sub GetAllFileSCG() Dim iter As Integer Dim pathdirectory As String 'pathdirectory : le path du répertoir des fichier scg pathdirectory = "E:\ReadFile" Dim di As New IO.DirectoryInfo(pathdirectory) Dim aryFi As IO.FileInfo() = di.GetFiles("*.scg") Dim fi As IO.FileInfo iter = 0 ReDim listfiles(iter) For Each fi In aryFi ReDim Preserve listfiles(iter) listfiles(iter) = fi.FullName iter = iter + 1 Next End Sub Private Sub FormNiblon_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.AutoScroll = True Me.AutoScrollMinSize = New Point(Me.Width - 10, Me.Height - 10) GetAllFileSCG() GetdataAllFiles() initlabels() details.BackColor = Color.Beige details.Width = 250 details.Height = 350 details.Visible = False fermer.Visible = False End Sub Private Sub GetdataAllFiles() Dim nfile As Integer Dim iter As Integer Dim iterinformation As Integer ReDim listclient(0) For iter = 0 To listfiles.Length - 1 nfile = FreeFile() FileOpen(nfile, listfiles(iter), OpenMode.Input) ReDim Preserve listclient(iter) iterinformation = 0 ReDim listclient(iter).informationclient(iterinformation) Do While Not EOF(nfile) ReDim Preserve listclient(iter).informationclient(iterinformation) listclient(iter).informationclient(iterinformation) = LineInput(nfile) iterinformation = iterinformation + 1 Loop FileClose(nfile) Next End Sub Private Sub initlabels() Dim iter As Byte 'Prépare le box pour les messages ReDim labelname(listclient.Length - 1) ReDim labelmessage(listclient.Length - 1) For iter = 0 To listclient.Length - 1 labelname(iter) = New Label labelname(iter).Anchor = AnchorStyles.None labelname(iter).Tag = CStr(iter) labelname(iter).BorderStyle = BorderStyle.Fixed3D labelname(iter).Margin = New Windows.Forms.Padding(0) labelname(iter).BackColor = Color.Wheat labelname(iter).Font = myfont labelname(iter).TextAlign = ContentAlignment.BottomLeft labelname(iter).ForeColor = Color.Black AddHandler labelname(iter).Click, AddressOf labelname_click Me.Controls.Add(labelname(iter)) labelmessage(iter) = New Label labelmessage(iter).Anchor = AnchorStyles.None labelmessage(iter).Tag = CStr(iter) labelmessage(iter).BorderStyle = BorderStyle.Fixed3D labelmessage(iter).Margin = New Windows.Forms.Padding(0) labelmessage(iter).BackColor = Color.LemonChiffon labelmessage(iter).Font = myfont labelmessage(iter).TextAlign = ContentAlignment.BottomLeft labelmessage(iter).ForeColor = Color.Black Me.Controls.Add(labelmessage(iter)) Next End Sub Private Sub displaydata() Dim g As Graphics = labelmessage(0).CreateGraphics Dim s As SizeF Dim iter As Integer Dim leftx As Integer Dim topy As Integer Dim njours As String leftx = 6 topy = 6 For iter = 0 To listclient.Length - 1 labelname(iter).Text = listclient(iter).informationclient(0) labelname(iter).Left = leftx labelname(iter).Top = topy njours = DateDiff(DateInterval.Day, Now, CDate(listclient(iter).informationclient(listclient(iter).informationclient.Length - 1))) If njours = 0 Then labelmessage(iter).Text = "prochain control aujourd'hui" Else If njours = 1 Then labelmessage(iter).Text = "prochain control demain" Else labelmessage(iter).Text = "prochain control dans :" & njours & " jours" End If End If s = g.MeasureString(labelmessage(iter).Text, labelmessage(iter).Font) labelmessage(iter).Width = s.Width 'labelmessage(iter).Text = labelmessage(iter).Text labelmessage(iter).Left = labelname(iter).Right + 1 labelmessage(iter).Top = labelname(iter).Top '+ (labelmessage(iter).PreferredHeight - labelname(iter).PreferredHeight) / 2 topy = labelmessage(iter).Bottom + 3 labelmessage(iter).Visible = True labelname(iter).Visible = True Next End Sub Private Sub me_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint displaydata() End Sub Private Sub labelname_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim g As Graphics = labelmessage(0).CreateGraphics Dim s As SizeF Dim labeldetails() As Windows.Forms.Label Dim maxwidth As Integer Dim h As Integer Dim iter As Integer ReDim labeldetails(listclient(sender.tag).informationclient.Length - 1) details.Controls.Clear() h = 0 maxwidth = 0 For iter = 0 To listclient(sender.tag).informationclient.Length - 1 labeldetails(iter) = New Label With labeldetails(iter) .TextAlign = ContentAlignment.BottomLeft .ForeColor = Color.Black .BorderStyle = BorderStyle.None .BackColor = Color.Transparent .Anchor = AnchorStyles.None .Font = myfont .Text = listclient(sender.tag).informationclient(iter) End With labeldetails(iter).Left = 1 If iter = 0 Then labeldetails(iter).Top = 1 Else labeldetails(iter).Top = labeldetails(iter - 1).Bottom End If s = g.MeasureString(labeldetails(iter).Text, labeldetails(iter).Font) labeldetails(iter).Width = s.Width + 6 If s.Width > maxwidth Then maxwidth = s.Width + 6 End If h = h + s.Height details.Controls.Add(labeldetails(iter)) Next details.Anchor = AnchorStyles.None details.Left = labelmessage(sender.tag).Right + 10 details.Top = 6 fermer.Top = details.Height - fermer.Height fermer.Left = details.Left + 10 fermer.Visible = True details.Visible = True End Sub Private Sub fermer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles fermer.Click details.Visible = False fermer.Visible = False End Sub End Class
Imports System.IO Public Class FormNiblon Private Structure dataclient Public informationclient() As String End Structure Private labelname() As System.Windows.Forms.Label Private labelmessage() As System.Windows.Forms.Label Private listclient() As dataclient Private myfont As New Font("arial", 12, FontStyle.Bold, GraphicsUnit.Pixel) Private listfiles() As String Private Sub GetAllFileSCG() Dim iter As Integer Dim pathdirectory As String 'pathdirectory : le path du répertoir des fichier scg pathdirectory = "E:\test" Dim di As New IO.DirectoryInfo(pathdirectory) Dim aryFi As IO.FileInfo() = di.GetFiles("*.scg") Dim fi As IO.FileInfo iter = 0 ReDim listfiles(iter) For Each fi In aryFi ReDim Preserve listfiles(iter) listfiles(iter) = fi.FullName iter = iter + 1 Next End Sub Private Sub FormNiblon_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.AutoScroll = True Me.AutoScrollMinSize = New Point(Me.Width - 10, Me.Height - 10) GetAllFileSCG() GetdataAllFiles() initlabels() details.BackColor = Color.Beige details.Width = 250 details.Height = 350 details.Visible = False fermer.Visible = False End Sub Private Sub GetdataAllFiles() Dim nfile As Integer Dim iter As Integer Dim iterinformation As Integer ReDim listclient(0) For iter = 0 To listfiles.Length - 1 nfile = FreeFile() FileOpen(nfile, listfiles(iter), OpenMode.Input) ReDim Preserve listclient(iter) iterinformation = 0 ReDim listclient(iter).informationclient(iterinformation) Do While Not EOF(nfile) ReDim Preserve listclient(iter).informationclient(iterinformation) listclient(iter).informationclient(iterinformation) = LineInput(nfile) iterinformation = iterinformation + 1 Loop FileClose(nfile) Next End Sub Private Sub initlabels() Dim iter As Byte 'Prépare le box pour les messages ReDim labelname(listclient.Length - 1) ReDim labelmessage(listclient.Length - 1) For iter = 0 To listclient.Length - 1 labelname(iter) = New Label labelname(iter).Anchor = AnchorStyles.None labelname(iter).Tag = CStr(iter) labelname(iter).BorderStyle = BorderStyle.Fixed3D labelname(iter).Margin = New Windows.Forms.Padding(0) labelname(iter).BackColor = Color.Wheat labelname(iter).Font = myfont labelname(iter).TextAlign = ContentAlignment.BottomLeft labelname(iter).ForeColor = Color.Black AddHandler labelname(iter).Click, AddressOf labelname_click Me.Controls.Add(labelname(iter)) labelmessage(iter) = New Label labelmessage(iter).Anchor = AnchorStyles.None labelmessage(iter).Tag = CStr(iter) labelmessage(iter).BorderStyle = BorderStyle.Fixed3D labelmessage(iter).Margin = New Windows.Forms.Padding(0) labelmessage(iter).BackColor = Color.LemonChiffon labelmessage(iter).Font = myfont labelmessage(iter).TextAlign = ContentAlignment.BottomLeft labelmessage(iter).ForeColor = Color.Black Me.Controls.Add(labelmessage(iter)) Next End Sub Private Sub displaydata() Dim g As Graphics = labelmessage(0).CreateGraphics Dim s As SizeF Dim iter As Integer Dim leftx As Integer Dim topy As Integer Dim njours As String leftx = 6 topy = 6 For iter = 0 To listclient.Length - 1 labelname(iter).Text = listclient(iter).informationclient(0) labelname(iter).Left = leftx labelname(iter).Top = topy njours = DateDiff(DateInterval.Day, Now, CDate(listclient(iter).informationclient(listclient(iter).informationclient.Length - 1))) If njours = 0 Then labelmessage(iter).Text = "prochain controle technique aujourd'hui" Else If njours = 1 Then labelmessage(iter).Text = "prochain controle technique demain" Else labelmessage(iter).Text = "prochain controle technique dans :" & njours & " jours" End If End If s = g.MeasureString(labelmessage(iter).Text, labelmessage(iter).Font) labelmessage(iter).Width = s.Width 'labelmessage(iter).Text = labelmessage(iter).Text labelmessage(iter).Left = labelname(iter).Right + 1 labelmessage(iter).Top = labelname(iter).Top '+ (labelmessage(iter).PreferredHeight - labelname(iter).PreferredHeight) / 2 topy = labelmessage(iter).Bottom + 3 labelmessage(iter).Visible = True labelname(iter).Visible = True Next End Sub Private Sub me_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint displaydata() End Sub Private Sub labelname_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim g As Graphics = labelmessage(0).CreateGraphics Dim s As SizeF Dim labeldetails() As Windows.Forms.Label Dim maxwidth As Integer Dim h As Integer Dim iter As Integer ReDim labeldetails(listclient(sender.tag).informationclient.Length - 1) details.Controls.Clear() h = 0 maxwidth = 0 For iter = 0 To listclient(sender.tag).informationclient.Length - 1 labeldetails(iter) = New Label With labeldetails(iter) .TextAlign = ContentAlignment.BottomLeft .ForeColor = Color.Black .BorderStyle = BorderStyle.None .BackColor = Color.Transparent .Anchor = AnchorStyles.None .Font = myfont .Text = listclient(sender.tag).informationclient(iter) End With labeldetails(iter).Left = 1 If iter = 0 Then labeldetails(iter).Top = 1 Else labeldetails(iter).Top = labeldetails(iter - 1).Bottom End If s = g.MeasureString(labeldetails(iter).Text, labeldetails(iter).Font) labeldetails(iter).Width = s.Width + 6 If s.Width > maxwidth Then maxwidth = s.Width + 6 End If h = h + s.Height details.Controls.Add(labeldetails(iter)) Next details.Anchor = AnchorStyles.None details.Left = labelmessage(sender.tag).Right + 10 details.Top = 6 fermer.Top = details.Height - fermer.Height fermer.Left = details.Left + 10 fermer.Visible = True details.Visible = True End Sub Private Sub EnregistrerToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EnregistrerToolStripMenuItem.Click SaveFileDialog.FileName = txt_NomClient.Text SaveFileDialog.Filter = "Fichiers scg|*.scg" SaveFileDialog.InitialDirectory = "E:\test" If SaveFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then Dim sw As New System.IO.StreamWriter(SaveFileDialog.FileName) sw.WriteLine(txt_nom.Text) sw.WriteLine(txt_adresse.Text) sw.WriteLine(txt_codepostal.Text) sw.WriteLine(txt_ville.Text) sw.WriteLine(txt_telephone.Text) sw.WriteLine(txt_marque.Text) sw.WriteLine(txt_model.Text) sw.WriteLine(txt_motorisation.Text) sw.WriteLine(txt_datemiseencirculation.Text) sw.WriteLine(txt_datedecontroletechnique.Text) sw.WriteLine(txt_dateprochaincontroetechnique.Text) sw.Flush() End If End Sub Private Sub OuvrirToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OuvrirToolStripMenuItem.Click OpenFileDialog.FileName = txt_NomClient.Text OpenFileDialog.Filter = "Fichiers scg|*.scg" OpenFileDialog.InitialDirectory = "E:\test" If OpenFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then Dim sr As New System.IO.StreamReader(OpenFileDialog.FileName) txt_nom.Text = sr.ReadLine txt_adresse.Text = sr.ReadLine txt_codepostal.Text = sr.ReadLine txt_ville.Text = sr.ReadLine txt_telephone.Text = sr.ReadLine txt_marque.Text = sr.ReadLine txt_model.Text = sr.ReadLine txt_motorisation.Text = sr.ReadLine txt_datemiseencirculation.Text = sr.ReadLine txt_datedecontroletechnique.Text = sr.ReadLine txt_dateprochaincontroetechnique.Text = sr.ReadLine ' sr.Flush() End If End Sub Private Sub fermer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles fermer.Click details.Visible = False fermer.Visible = False End Sub End Class
Dim g As Graphics = labelmessage(0).CreateGraphics