1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
|
Allmänhet klassificerar Form1
Den privata suben Button1_Click (den ByVal avsändaren som System.Object, ByVal e som System.EventArgs) behandlar Button1.Click
Dunkel strToPrint som stränger = ”är här”, & vbTab & ”stränger med något” & vbTab & _,
”bäddade in flikstopp” & vbTab & ”och” & vbCrLf & _,
vbTab & vbTab & ”en ny rad” & vbTab & ”för”,
Dunkel m_printer som ny iHandlePrinting
m_printer.PrinterFont = ny stilsort (”ny kurir”, 9, FontStyle.Bold)
'Avund kodifierar R VS
m_printer.DefaultPageSettings.Margins.Left = 10
m_printer.DefaultPageSettings.Margins.Top = 10
m_printer.DefaultPageSettings.Margins.Bottom = 50
'Fastställd TextToPrint egenskap
m_printer.TextToPrint = ""- & vbCrLf- & strToPrint '~~~ i ditt kodifierar, tar bort denna fodrar
''' m_printer.TextToPrint = "" & vbCrLf & Me.txt SelectedRecord.Text '~~~ och uncomment som detta fodrar.
'Uppsättning de required flikstoppen. Notera att ~~~ för varje flikspecifikation 'tillfogar fodrar liknande till.
'är offseten från den föregående fliken. '~~~ detta före att åkalla
Dunkla sngaTabStops som singel () = {100.0F, 150.0F, 300.0F} '~~~ tryckmetoden.
m_printer.TabStops = sngaTabStops '~~~
'Körningstrycket befaller
m_printer. Tryck ()
Avsluta suben
Avsluta klassificerar
Importer System.Drawing
Importer System.Drawing.Printing
Allmänhet klassificerar iHandlePrinting: Övertar Printing.PrintDocument
#Region ”egenskapsvariabler”,
''',
''' Egenskapsvariabel för stilsorten som användaren önskar att använda
''',
''',
Privat _font som stilsort
''',
''' Egenskapsvariabeln för texten till skrivs ut
''',
''',
Privat _text som stränger
Privata _tabStops som singel () = {0.0F} '~~~ tillfogar denna samling.
#Endregion
#Regionen ”klassificerar rekvisita”,
Offentliga egenskapsTabStops () ~~~ som för singeln ( ) 'tillfogar denna egenskap.
Få '~~~
Gå _tabStops tillbaka '~~~
Avsluta får '~~~
Uppsättning (ByVal värderar som singel ()) '~~~
_tabStops = värderar '~~~
Avsluta fastställd '~~~
Avsluta egenskaps '~~~
''',
''' Egenskap som rymmer texten som ska skrivas ut
''',
''',
''' A stränger
''',
Offentlig egenskap TextToPrint () som stränger
Få
Gå _text tillbaka
Avsluta får
Uppsättning (ByVal värderar som stränger),
_text = värderar
Avsluta uppsättningen
Avsluta egenskapen
Allmänhet fungerar ShowPrintDialog () som Boolean '~~~*typ bör förklaras!
ShowPrintDialog (jag)
Återgångt True
Avsluta fungerar
Privat fungera ShowPrintDialog (ByRef myDocumentToPrint som PrintDocument) som Boolean '~~~*typ bör förklaras!
Dunkel psd som nya PageSetupDialog
Med psd
.AllowMargins = True
.AllowOrientation = True
.AllowPaper = True
.AllowPrinter = True
.ShowHelp = True
.ShowNetwork = True
. Dokument = myDocumentToPrint
Avsluta med
psd.ShowDialog ()
Gå riktigt tillbaka
Avsluta fungerar
''',
''' Egenskap som rymmer stilsorten som användarena önskar att använda
''',
''',
''',
''',
Offentlig egenskap PrinterFont () som stilsort
'Låter användaren till åsidosättande standardstilsorten
Få
Gå _font tillbaka
Avsluta får
Uppsättning (ByVal värderar som stilsort),
_font = värderar
Avsluta uppsättningen
Avsluta egenskapen
#Endregion
#Regionen ”klassificerar Constructors”,
''',
Tom constructor för '''
''',
''',
Offentliga undernya ()
'Uppsättning som spara strömmer
MyBase.New ()
'Exemplifiera textegenskapen till ett tomt stränger ut
_text = String.Empty
Avsluta suben
''',
''' Constructoren som initialiserar vår printing, anmärker
''' och texten den har förment som är printing
''',
''' Text, som ska, skrivs ut
''',
Offentligt undernytt (den ByVal stren som stränger)
'Uppsättning som spara strömmer
MyBase.New ()
'Uppsättning som vår textegenskap värderar
_text = str
Avsluta suben
#Endregion
#Region ”OnBeginPrint”,
''',
''' Åsidosättande som den standardOnBeginPrint metoden av PrintDocumenten anmärker
''',
''',
''',
Skyddade åsidosättanden underOnBeginPrint (ByVal e som Printing.PrintEventArgs)
'Körningen baserar kodifierar
MyBase.OnBeginPrint (e)
'Kontrollera för att se, om användaren g en stilsort
'om de inte gjorde därefter, vi standardinställer till Times New Roman
Om _font är ingenting därefter
'Skapa stilsorten som vi behöver
_font = ny stilsort (”Times New Roman”, 10)
Avsluta om
Avsluta suben
#Endregion
#Region ”OnPrintPage”,
''',
''' Åsidosättande den standardOnPrintPage metoden av PrintDocumenten
''',
''',
''' Detta ger trycklogiken för vårt dokument
Skyddade åsidosättanden underOnPrintPage (ByVal e som Printing.PrintPageEventArgs)
'Körningen baserar kodifierar
MyBase.OnPrintPage (e)
'Förklara behövda lokalvariabler
Statisk elektricitet som är curChar som heltal
Dunkel printHeight som heltal
Dunkel printWidth som heltal
Dunkel leftMargin som heltal
Dunkel rightMargin som heltal
Dunkelt fodrar som Int32
Dunkla rödingar som Int32
'Fastställdt tryckområde storleksanpassar och förser med marginal
Med MyBase.DefaultPageSettings
printHeight = .PaperSize.Height -. Margins.Top -. Margins.Bottom
printWidth = .PaperSize.Width -. Margins.Left -. Margins.Right
leftMargin =. Margins.Left 'X
rightMargin =. Margins.Top 'Y
Avsluta med
'Kontrollera, om den utvalda användaren att skriva ut in landskap funktionsläge
'om de gjorde därefter, vi behöver att byta höjd-/breddparametrar
Om MyBase.DefaultPageSettings.Landscape därefter
Dunkel tmp som heltal
tmp = printHeight
printHeight = printWidth
printWidth = tmp
Avsluta om
'Nu vi behöver att bestämma slutsumman numrerar av fodrar
'vi går att vara printing
Dunkla numLines som Int32 = CInt (printHeight/PrinterFont.Height)
'Skapa en rektangelprinting är för vårt dokument
Dunkel printArea som nya RectangleF (leftMargin, rightMargin, printWidth, printHeight)
'Använd StringFormaten klassificerar för textorienteringen av vårt dokument
Dunkelt formatera som nya StringFormat (StringFormatFlags.LineLimit)
~~~ för format.SetTabStops (0.0F, _tabStops ) 'tillfogar denna fodrar.
'Passform så många tecken, som vi kan in i tryckområdet
e.Graphics.MeasureString (_text. Substring ((curChar) RemoveZeros), PrinterFont, nya SizeF (printWidth, printHeight), formaterar, bränner till kol, fodrar),
'Skriv ut sidan
e.Graphics.DrawString (_text. Substring ((curChar) RemoveZeros), PrinterFont, Brushes.Black, printArea, formaterar),
'Räkning för förhöjningströmröding
curChar +=-rödingar
'Detemine, om det finns mer text som ska skrivas ut, om
'det finns berättaen som skrivaren där är mer kommande
Om curChar <>
''' Fungerar för att byta ut några nollor in storleksanpassa till en 1
Ska ''' nolla rörar upp printingområdet
''',
''' Värderar för att kontrollera
''',
''',
Allmänhet fungerar RemoveZeros (ByVal värderar som heltal), som heltal
'Kontrollera värdera som passeras in i fungera,
gå en 1 tillbaka, 'om värdera är en 0 (nolla) därefter,
'annars retur som värdera passerade in
Det valda fallet värderar
Fall 0
Retur 1
Fall annars
Gå tillbaka värderar
Avsluta valt
Avsluta fungerar
#Endregion
Avsluta klassificerar
|