PDA

View Full Version : سوال: چاپ ليبل



yshahab
جمعه 18 اردیبهشت 1388, 21:21 عصر
سلام
من ميخوام با وارد كردن اطلاعات يه چيزي و وارد كردن تعداد ليبل اون به همون تعداد واسش ليبل چاپ كنم . اينكارو كردم اما به صورت تك تك ولي من مي خوام يه سري اطلاعات وارد كنم و واسه همشون تو يك يا چند صفحه ليبل بگيرم . اينم سورسم :
فرم 1 :

Option Explicit


Public Cols As Integer

Private Sub Command1_Click()

On Error Resume Next

Dim i%

Dim c%, r%, sp%

'space between lables
sp = 20

Cols = Val(txtColumns)
Form2.Show

With Form2

For i = 0 To Val(txtCount) - 1

Load .Shape1(i)

Load .lblValue1(i)
Load .lblValue2(i)
Load .lblValue3(i)
Load .lblValue4(i)
Load .lblValue5(i)

Load .Label1(i)
Load .Label2(i)
Load .Label3(i)
Load .Label4(i)
Load .Label5(i)

.lblValue1(i).Caption = Text1(i)
.lblValue2(i).Caption = Text2(i)
.lblValue3(i).Caption = Text3(i)
.lblValue4(i).Caption = Text4(i)
.lblValue5(i).Caption = Text5(i)

With .Shape1(i)

If c >= Cols Then c = 0: r = r + 1

.Move c * (.Width + sp), r * (.Height + sp)

c = c + 1

Form2.lblValue1(i).Move .Left + 60, .Top + 50
Form2.lblValue2(i).Move .Left + 60, .Top + 400
Form2.lblValue3(i).Move .Left + 60, .Top + 760
Form2.lblValue4(i).Move .Left + 60, .Top + 1120
Form2.lblValue5(i).Move .Left + 60, .Top + 1500

Form2.Label1(i).Move .Left + 3480, .Top + 50
Form2.Label2(i).Move .Left + 3800, .Top + 450
Form2.Label3(i).Move .Left + 3900, .Top + 800
Form2.Label4(i).Move .Left + 4100, .Top + 1150
Form2.Label5(i).Move .Left + 4000, .Top + 1550

End With

Dim obj As Object
For Each obj In Form2.Controls
obj.Visible = True
Next

Next

End With

End Sub


فرم 2 :

Option Explicit

Private Sub Command1_Click()

On Error Resume Next

Command1.Visible = False

Me.PrintForm

Command1.Visible = True


End Sub

yshahab
شنبه 19 اردیبهشت 1388, 14:57 عصر
بچه ها کسی کمک نمیکنه ؟:ناراحت: