jytest
Messages postés315Date d'inscriptiondimanche 27 novembre 2005StatutMembreDernière intervention22 décembre 2014
-
Modifié par jytest le 23/12/2014 à 08:16
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
23 déc. 2014 à 13:07
Bonjour,
Pouvez-vous prendre un peu de votre temps pour m'aider ?
Je souhaiterais renvoyer le focus à "txtDateNaissance00",
mais suite à ce print, le contrôle ne lui est pas donné.
Pour être franc, je ne sais même pas où le focus va...
Pouvez-vous m'aider à résoudre ce souci très ennuyant ?
Google ne m'a pas été de grand secours pour ce truc...
D'avance, un grand merci.
Voici le code dans une cmdValiderVente.click() :
If pcbPrintON.Visible = True Then
PrintTransactionVente.Print()
txtDateNaissance00.Focus()
End If
et voici :
Private Sub PrintTransactionVente_PrintPage(sender As Object, e As PrintPageEventArgs) Handles PrintBonFidelite.PrintPage
Dim logo01 As Image, logo02 As Image
Dim x1 As Integer, y1 As Integer
Dim fontCAP As PrivateFontCollection = New PrivateFontCollection
fontCAP.AddFontFile(locfichier10 & "code128.ttf")
Dim fontEAN As New Font(fontCAP.Families(0), 28, FontStyle.Regular)
Dim font10 = New Font("Arial", 10)
Dim font10bold = New Font("Arial", 10, FontStyle.Bold)
Dim font08 = New Font("Arial", 8)
Dim font1 As New Font("Arial", 10, FontStyle.Regular, GraphicsUnit.Point)
Dim font2 As New Font("Arial", 20, FontStyle.Bold, GraphicsUnit.Point)
Dim font3 As New Font("Arial", 55, FontStyle.Bold, GraphicsUnit.Point)
Dim stringFormat As New StringFormat()
logo01 = Image.FromFile(locfichier05 & "BAL_modif_L264px.png")
logo02 = Image.FromFile(locfichier05 & "replay_modif_L264px.png")
'Dim printer As String = "EPSON TM-T88IV ReceiptE4"
'Dim net As Object
'net = CreateObject("WScript.Network")
'net.SetDefaultPrinter("EPSON TM-T88IV ReceiptE4")
x1 = 0
y1 = 0
e.Graphics.DrawImage(logo01, x1 + ticketMargeG, y1, ticketLargeur, CInt(105 * ticketLargeur / 264))
y1 = y1 + 104
e.Graphics.DrawImage(logo02, x1 + ticketMargeG, y1, ticketLargeur, CInt(84 * ticketLargeur / 264))
y1 = y1 + 85
'ticketTexteG = licEnseigne & Chr(10) & licAdresse00 & Chr(10) & licLocalite & Chr(10) & licTel
'e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1 + ticketMargeG, y1)
ticketTexteC = licEnseigne & Chr(10) & licAdresse00 & Chr(10) & licLocalite & Chr(10) & licTel
Dim rectLicence As New Rectangle(13, y1 + 2, 250, 64)
stringFormat.Alignment = StringAlignment.Center
stringFormat.LineAlignment = StringAlignment.Center
e.Graphics.DrawString(ticketTexteC, font1, Brushes.Black, rectLicence, stringFormat)
e.Graphics.DrawRectangle(Pens.White, rectLicence)
y1 = y1 + 70
ticketTexteG = "Caisse : " & licPoste
e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1 + ticketMargeG, y1)
y1 = y1 + 15
ticketTexteG = "Date : " & ticketNewDate
e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1 + ticketMargeG, y1)
y1 = y1 + 35
e.Graphics.DrawString(code128TableB(recordClient), fontEAN, Brushes.Black, x1, y1)
y1 = y1 + 42
ticketTexteG = Trim(txtNom.Text) & " " & Trim(txtPrenom.Text)
e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1 + ticketMargeG, y1)
y1 = y1 + 40
ticketTexteC = "15.00"
Dim rectFidelite01 As New Rectangle(13, y1 + 2, 250, 75)
stringFormat.Alignment = StringAlignment.Center
stringFormat.LineAlignment = StringAlignment.Center
e.Graphics.DrawString(ticketTexteC, font3, Brushes.Black, rectFidelite01, stringFormat)
e.Graphics.DrawRectangle(Pens.White, rectFidelite01)
y1 = y1 + 63
ticketTexteC = "euros de fidélité"
Dim rectFidelite02 As New Rectangle(13, y1 + 2, 250, 30)
stringFormat.Alignment = StringAlignment.Center
stringFormat.LineAlignment = StringAlignment.Center
e.Graphics.DrawString(ticketTexteC, font2, Brushes.Black, rectFidelite02, stringFormat)
e.Graphics.DrawRectangle(Pens.White, rectFidelite02)
y1 = y1 + 35
e.Graphics.DrawString(code128TableB(ticketNumero), fontEAN, Brushes.Black, x1, y1)
y1 = y1 + 40
ticketTexteG = "Ce bon est nominatif et n'est pas cessible."
e.Graphics.DrawString(ticketTexteG, font08, Brushes.Black, x1 + ticketMargeG, y1)
y1 = y1 + 12
ticketTexteG = "Valable jusqu'au : 31/12/2015"
e.Graphics.DrawString(ticketTexteG, font08, Brushes.Black, x1 + ticketMargeG, y1)
y1 = y1 + 50
'ticketTexteG = "Nous vous remercions" & Chr(10) &
' "pour votre fidélité."
'e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1 + ticketMargeG, y1)
ticketTexteC = "Nous vous remercions" & Chr(10) &
"pour votre fidélité."
Dim rectRemerciement As New Rectangle(13, y1 + 2, 250, 35)
stringFormat.Alignment = StringAlignment.Center
stringFormat.LineAlignment = StringAlignment.Center
e.Graphics.DrawString(ticketTexteC, font1, Brushes.Black, rectRemerciement, stringFormat)
e.Graphics.DrawRectangle(Pens.White, rectRemerciement)
y1 = y1 + 35
ticketTexteG = "."
e.Graphics.DrawString(ticketTexteG, font10, Brushes.Black, x1, y1)
End Sub
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 23 déc. 2014 à 13:07
Bonjour,
La réponse de Whismeril est parfaitement justifiée, à divers titres.
Et on n'a jamais vu (ni ne verra jamais) un contrôle perdre le focus du seul fait d'une instruction d'impression ... sauf si, bien évidemment, le focus a été donné à un autre contrôle par une autre instruction. Et tu es alors bien le seul à savoir si tu as ou non donné ce focus à un autre contrôle.