|
VFP ·R¥ÎªÌªÀ°Ï ¥»°Q½×°Ï¬° Visual Foxpro ·R¥ÎªÌ¸gÅç¥æ¬yªº¦a¤è, ½Ð¦h¦h§Q¥Î"·j´M"ªº¥\¯à, ¥ý¬d¬Ý¬Ý¦³µL«e¨Ò¥i´`, ¦pªGÁÙ¦³¤£À´ªº¦Aµo°Ý. ³¡¥÷¥DÃD¦³ªþ¥[ÀÉ®×, ¶·¥ýµù¥U¦¨¬°ªÀ°Ï©~¥Á¤~¥i¥H¤U¸ü.
|
¤W¤@½g¥DÃD :: ¤U¤@½g¥DÃD |
µoªí¤H |
¤º®e |
syntech
µù¥U®É¶¡: 2003-05-16 ¤å³¹: 4212 ¨Ó¦Û: Taipei,Taiwan
²Ä 16 ¼Ó
|
µoªí©ó: ¬P´Á¤@ ¤E¤ë 24, 2012 2:01 pm ¤å³¹¥DÃD: |
|
|
¨º´N¦b³øªí¤W¦C¦L¥X¼Ð½u®æ½u´N¦n,
¤£»Ýn¨Ï¥ÎªÌ®³¤Ø¦b¿Ã¹õ¶q.
¥H³øªí¬°·Ç,
7¼Ó¤£´N¬O³oÓ·N«ä.
¥t¤@ºØ¤è¦¡¬O¦C¦L®É¥[¤J©³¦â,
¨Ò¦p¦bGRID¤¤±`±`¬Ý¨ì³æ¼Æµ§¤°»ò¦â,°¸¼Æµ§¤°»ò¦â.
·íµMÂàEXCEL´N§ó²M·¡.
³oºØ±¡ªp¤U,ªáÂI¤ß«ä§âEXCELªí§@º}«G¤ñ¸û§Ö.
ª½±µ¦bEXCELªí¤W¥[¤JÃä®Ø¤Î¦â±m.
---
¤j¦h¼ÆVFP¶}µoªÌ¹ïWINDOWS ¦p¦óø»sµe±¨S¬Æ»ò·§©À,
«Ü®e©ö§â¨Æ±¡·Q±o¤Ó²³æ,
¨ä¹êVFP¯uªº´N¬O¾A¦X³B²z¸ê®Æ,
¨ä¥Lªºªá«N¥\¯à³Ì¦n·í§@¿ì¤£¨ì¤ñ¸û§Ö.
§Þ³N²Ó¸`¤£·Q¦h»¡. ^_^ _________________ ¦pªG¤½¥q¦³¤U¦C§xÂZ:
1. §ä¤£¨ì«K©y,§Ö³t,²©öªº ¥Í²£±Æµ{³nÅé
2. ¤£ª¾¹D¦p¦ó§Ö³t±Æ©w ±ÄÁÊp¹º
3. ¦¨¥»§ì¤£·Ç,¦Û¤vºâ¤ñ³nÅéºâ¦³¥Î
4. ·Q¾Ç²ß¨t²Î³W¹º,·Q§ä¨t²Î¬[ºcªºÅU°Ý
½ÐÁpµ¸§ÚÌ,¤]³\§ÚÌÀ°±o¤W¦£ |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 17 ¼Ó
|
µoªí©ó: ¬P´Á¤@ ¤E¤ë 24, 2012 3:37 pm ¤å³¹¥DÃD: |
|
|
·j´M¤F¤@¤U¡A§Úı±o¡A³o¦ü¥G¬OCrystal Reportªº¥\¯à¡H(¤£½T©w°Õ) |
|
¦^³»ºÝ |
|
|
LiuRambo
µù¥U®É¶¡: 2007-11-27 ¤å³¹: 481
²Ä 18 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤Q¤ë 02, 2012 11:21 pm ¤å³¹¥DÃD: |
|
|
³øªí¤W¥[½u±øÀ³¸Ó¬O«Ü±`¦³ªº¨Æ
¦Ó¥Bn¥h±±¨î¦ó®É¸Ó¥X²{µê½u¡B¹ê½u ¬Æ¦ÜÂù¹ê½u
³o¼Ë´N¥i¥H¹F¨ì¤£·|·d²V ¤S¯àÅý¨Ï¥ÎªÌ¬Ý±o²M·¡
§ÚÌ¥H«eªº³øªí¤@©w¬O4±øµê½u+1±ø¹ê½u ¤×¨ä¬OA3¾î¦¡³øªí ¨S½u®Ú¥»¨S¿ìªk¬Ý
Ó¤Hı±oUser¥u¬O³æ¯Â"¤£·Q¬Ý¿ù" ¦ý³o¤Q¦r¥\¯àµ´¹ï¤£¬O¦o¯u¥¿·Qnªº |
|
¦^³»ºÝ |
|
|
garfield Site Admin
µù¥U®É¶¡: 2003-01-30 ¤å³¹: 2157
²Ä 19 ¼Ó
|
µoªí©ó: ¬P´Á¤T ¤Q¤ë 03, 2012 2:37 pm ¤å³¹¥DÃD: |
|
|
°ÝÃD«Ü³æ¯Â, µª®×«Ü²³æ, ¥unÀHµÛ·Æ¹«²¾°Ê®É¥X²{¶ñº¡µe±ªº¤Q¦r½u§Y¥i.
¨Ï¥ÎªÌ¶¶µÛ½u¬Ý¸ê®Æ¤ñ¸û¤£·|¬Ý¬n±¼.
¦bform.init ¥[¤W³o¨Çµ{¦¡½X
thisform.AddObject('mouselinex','shape')
thisform.AddObject('mouseliney','shape')
thisform.mouselinex.width = 1
thisform.mouselinex.top=1
thisform.mouselinex.height = thisform.Height
thisform.mouseliney.left=1
thisform.mouseliney.width = thisform.Width
thisform.mouseliney.height = 1
thisform.mouselinex.visible=.t.
thisform.mouseliney.visible=.t.
¦bform.mousemove ¥[¤W³o¨Çµ{¦¡½X
LPARAMETERS nButton, nShift, nXCoord, nYCoord
thisform.mouselinex.left = nXCoord
thisform.mouselinex.height=thisform.height
thisform.mouselinex.BorderStyle= MOD(nXCoord,5)+1
thisform.mouseliney.top=nYCoord
thisform.mouseliney.width = thisform.Width
thisform.mouseliney.BorderStyle=MOD(nYCoord,5)+1 _________________ §Q¥Î>>·j´M<<ªº¥\¯à·|¤ñ°ÝªºÁÙn§Ö±o¨ìµª®×. |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 20 ¼Ó
|
µoªí©ó: ¬P´Á¤T ¤Q¤ë 03, 2012 3:31 pm ¤å³¹¥DÃD: |
|
|
¦ý¡A¥Lªº°ÝÃD¬O¦b³øªí¹wÄý®É¦³¤Q¦r½u¡A¦Ó«D Form ¤W¬Ý¤Q¦r½u¡C |
|
¦^³»ºÝ |
|
|
yctsai
µù¥U®É¶¡: 2003-04-11 ¤å³¹: 179
²Ä 21 ¼Ó
|
µoªí©ó: ¬P´Á¤T ¤Q¤ë 03, 2012 4:10 pm ¤å³¹¥DÃD: |
|
|
1.·PÁ garfield,®ÄªG«Ü´Î,²×©ó¦³ª¾µ
2.·PÁ ckp6250,§Úªº°ÝÃD¬O¦b³øªí¹wÄý®É¦³¤Q¦r½u¡A¦Ó«D Form ¤W¬Ý¤Q¦r½u
3.¤½¥¬µª®×,§ä¨ì¤@´Ú³nÅépicpick,¦³Ãþ¦ü¤Q¦r½u,¦ý¬Ogarfield³Ì¦n(picpick¨ä¥¦¥\¯à¤]«Ü±j¤j,¥i°Ñ¦Ò) |
|
¦^³»ºÝ |
|
|
garfield Site Admin
µù¥U®É¶¡: 2003-01-30 ¤å³¹: 2157
²Ä 22 ¼Ó
|
µoªí©ó: ¬P´Á¤T ¤Q¤ë 03, 2012 6:45 pm ¤å³¹¥DÃD: |
|
|
«z, ¤Ó¤Ñ¯u¥H¬°«Ü²³æ, ¨ä¹ê¦³ÂIÃø,
¦A¨q¥t¤@Ó¦bform¸ÌÅã¥Üreport ,
¦ýÁÙ¬O¤@¼Ë¦b³øªí¤W¬Ý¤£¨ì¤Q¦r½u,
¥N½X: |
*-- ³øªí¹w³¡¥÷¥N½X
Set REPORTBEHAVIOR 90
lcReport=Home(2)+"Solution\Europa\EmployeesMD.frx"
oListener = Createobject('BaseReportListener')
olistener.PreviewContainer=Newobject([ReportForm])
Report Form (lcreport) Object oListener Nowait
*-- ³øªí¹wÄýµ¡¤f
Define Class ReportForm As Form
AutoCenter = .T.
WindowState = 2
BorderStyle = 0
TitleBar = 0
WindowType = 1
BackColor = Rgb(65,65,65)
DataSession = 1
oListener = .Null.
nCurrentPage = 1
nPageHeight = 100
nPageWidth = 100
ScrollBars = 3
Width = 400
Height = 400
AllowOutput = .F.
oTools = .Null.
oGotoPage = .Null.
oPrint = .Null.
Add Object shpPreview As Shape With ;
Top = 10,;
Left = 10,;
Width = 300,;
Height = 300
Procedure Init
DoDefault()
With This As Form
.AddObject('mouselinex','shape')
.AddObject('mouseliney','shape')
.mouselinex.visible=.t.
.mouseliney.visible=.t.
.oTools = Createobject([frxpreviewtoolbar])
.oGotoPage = Createobject([frxgotopageform])
.oPrint = Createobject([frxPrintForm])
With .oTools
.Show()
Bindevent(This.oTools,[CboZooMInteractiveChange],This,[CboZooMInteractiveChange])
Bindevent(.cmdClose,[Click],This,[cmdCloseClick])
Bindevent(.cntPrev.cmdTop,[Click],This,[cmdTopClick])
Bindevent(.cntPrev.cmdPrev,[Click],This,[cmdPrevClick])
Bindevent(.CntNext.cmdNext,[Click],This,[cmdNextClick])
Bindevent(.CntNext.cmdBott,[Click],This,[cmdBottClick])
Bindevent(.cmdgotopage,[Click],This,[ActionGotoPage])
Bindevent(.cmdprint,[Click],This,[Print])
Endwith
.Refresh
Endwith
Endproc
Procedure mousemove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
WITH this
.mouselinex.width = 3
.mouselinex.top=1
.mouselinex.height = .Height
.mouselinex.left = nXCoord
.mouselinex.height= .height
.mouselinex.BorderStyle= MOD(nXCoord,5)+1
.mouseliney.left=1
.mouseliney.width = .Width
.mouseliney.height = 3
.mouseliney.top=nYCoord
.mouseliney.width = .Width
.mouseliney.BorderStyle= MOD(nYCoord/2,2)*2+1
ENDWITH
Endproc
Procedure SetReport
Lparameters oListenerRef
This.oListener = oListenerRef &&±N¹ïReportListener¹ï¶Hªº¤Þ¥Î«O¦s¨ìªí³æªºoListenerÄݩʤ¤
Endproc
Procedure Show
Lparameters nStyle
With This
If Vartype(.oListener) = "O"
.nPageHeight = .oListener.GetPageHeight() / 10 &&Àò±o¶±ªº¹³¯À°ª«×¡]¨C^¦T96DPI¡^
.nPageWidth = .oListener.GetPageWidth() / 10 &&Àò±o¶±ªº¹³¯À¼e«×
.shpPreview.Height = Int(.nPageHeight) &&³]¸m§Îª¬ªº°ª«×
.shpPreview.Width = Int(.nPageWidth) &&³]¸m§Îª¬ªº¼e«×
.Caption = "³øªí¹wÄýµ{§Ç-" + .oListener.CommandClauses.File &&¼ÐÃD¤¤¥]§t¦³³øªíªº¤å¥ó¦WºÙ
.Refresh
Endif
DoDefault(nStyle) &&°õ¦æÀq»{ªºShow¤èªk¦æ¬°
Endwith
Endproc
Procedure Paint
With This
If Vartype(.oListener)="O"
.oListener.OutputPage(.nCurrentPage,.shpPreview,2)
Endif
.CmdRefresh()
Endwith
Endproc
*-- «ö§áªº¥i¥Îª¬ºA
Procedure CMDRefresh
With This
.oTools.cntPrev.cmdPrev.Enabled = Vartype(.oListener) = 'O' And .nCurrentPage > 1
.oTools.cntNext.cmdNext.Enabled = Vartype(.oListener) = 'O' And .nCurrentPage < .oListener.OutputPageCount
.oTools.cntPrev.cmdTop.Enabled = Vartype(.oListener) = 'O' And .nCurrentPage > 1
.oTools.cntNext.cmdBott.Enabled = Vartype(.oListener) = 'O' And .nCurrentPage < .oListener.OutputPageCount
Endwith
Endproc
Procedure QueryUnload
With This
If Vartype(This.oListener) = 'O'
.oListener.PreviewContainer = .Null. &&ÄÀ©ñ¹ï³øªí¹wÄýµ{§Ç¹ï¶Hªº¤Þ¥Î
.oListener.OnPreviewClose(.F.) &&Ãö³¬¹wÄý
Endif
.oListener = .Null.
Endwith
Endproc
*-- ³Ì«e¶
Procedure cmdTopClick
With Thisform
.nCurrentPage = 1
.oListener.OutputPage(1, .shpPreview, 2) &&Åã¥Ü²Ä¤@¶
.CmdRefresh() &&³]¸m«ö¶sªº¥i¥Îª¬ºA
* .txtPage.Value = 1
Endwith
Endproc
*-- «e¤@¶
Procedure cmdPrevClick
With Thisform
.nCurrentPage = .nCurrentPage - 1 &&·í«e³øªí¶¸¹´î1
.oListener.OutputPage(.nCurrentPage, .shpPreview, 2) &&Åã¥Ü«ü©w¶
.CmdRefresh() &&³]¸m«ö¶sªº¥i¥Îª¬ºA
* .txtPage.Value = .nCurrentPage
Endwith
Endproc
*-- «á¤@¶
Procedure cmdNextClick
With Thisform
.nCurrentPage = .nCurrentPage + 1 &&·í«e³øªí¶¸¹´î1
.oListener.OutputPage(.nCurrentPage, .shpPreview, 2) &&Åã¥Ü«ü©w¶
.CmdRefresh() &&³]¸m«ö¶sªº¥i¥Îª¬ºA
*.txtPage.Value = .nCurrentPage
Endwith
Endproc
*-- ³Ì«á¤@¶
Procedure cmdBottClick
With Thisform
.nCurrentPage = .oListener.OutputPageCount
.oListener.OutputPage(.nCurrentPage, .shpPreview, 2) &&Åã¥Ü³Ì«á¤@¶
.CmdRefresh() &&³]¸m«ö¶sªº¥i¥Îª¬ºA
* .txtPage.Value = .nCurrentPage
Endwith
Endproc
*-- «ü©w¶
Procedure ActionGotoPage
With Thisform
.oTools.Enabled = .F.
.oGoToPage.PageNo = .nCurrentPage
.oGoToPage.PageTotal = .oListener.OutputPageCount
.oGotoPage.Show()
If .oGoToPage.PageNo >= 1 And .oGoToPage.PageNo <= .oListener.OutputPageCount
.nCurrentPage = .oGoToPage.PageNo
.oListener.OutputPage(.nCurrentPage, .shpPreview, 2)
Thisform.CMDRefresh
Else
=Messagebox("¶¸¹µL®Ä©Î¤w¸g¶W¥X¤FÁ`¶¼Æ",0+48,"´£¥Ü")
Endif
.oTools.Enabled = .T.
Endwith
Endproc
*-- Ãö³¬«ö§á
Procedure cmdCloseClick
With Thisform
If Vartype(.oListener) = 'O'
.oListener.PreviewContainer = .Null.
.oListener.OnPreviewClose(.F.)
Endif
.oListener = .Null.
.Release()
Endwith
Endproc
*-- §ó§ïÅã¥Ü¤ñ¨Ò
Procedure CboZooMInteractiveChange
Lparameters vVal
With Thisform
If Vartype(.oListener) = "O"
.shpPreview.Height = Int(.nPageHeight * Val(vVal) /100)
.shpPreview.Width = Int(.nPageWidth * Val(vVal) /100)
.oListener.OutputPage(.nCurrentPage, .shpPreview, 2)
Endif
Endwith
Endproc
*-- ¥´¦L
Procedure Print
With Thisform
.oTools.Enabled = .F.
.oPrint.PageNo = .nCurrentPage
.oPrint.PageTotal = .oListener.OutputPageCount
.oPrint.Show()
If .oPrint.PrintOk = .T.
Do Case
*-- ¥´¦L©Ò¦³ªº¶
Case .oPrint.opgPrint.Value = 1 &&¥´¦L©Ò¦³¶
.oListener.CommandClauses.PrintRangeFrom = 1
.oListener.CommandClauses.PrintRangeTo = .oListener.OutputPageCount
*-- ¥´¦L·í«e¶
Case .oPrint.opgPrint.Value = 2
.oListener.CommandClauses.PrintRangeFrom = .nCurrentPage
.oListener.CommandClauses.PrintRangeTo = .nCurrentPage
*-- ¥´¦L¶½X½d³ò
Case .oPrint.opgPrint.Value = 3
.oListener.CommandClauses.PrintRangeFrom = .oPrint.spnPageNoFrom.Value
.oListener.CommandClauses.PrintRangeTo = .oPrint.spnPageNoTo.Value
ENDCASE
WAIT WINDOW [½ÐµyÔ,¨t²Î¥¿¦b¶i¦æ¥´¦L³B²z......] NOWAIT
.oListener.PreviewContainer = .Null. &&¨ú®ø¹ï¹wÄýµ{§Ç¹ï¶Hªº¤Þ¥Î
.oListener.OnPreviewClose(.T.) &&¿é¥X¨ì¥´¦L¾÷
.oListener = .Null.
.Release &&Ãö³¬ªí³æ
Endif
.oTools.Enabled = .T.
.Refresh
Endwith
Endproc
Enddefine
Define Class PreToolbarCommandButton As CommandButton
Height = 22
Width = 23
Top = 0
SpecialEffect = 2
Caption=[]
Enddefine
Define Class BaseReportListener As ReportListener
ListenerType = 1 &&³]¸m¿é¥X¼Ò¦¡
OutputType = 1 &&¿é¥XÃþ«¬
DynamicLineHeight = .F.
Enddefine
Define Class ReportText As TextBox
Top = 1
Width = 35
Enddefine
*
Define Class CntPrevClass As PreContainert
Add Object cmdtop As PreToolbarCommandButton With ;
Left = 0, ;
Picture = "prefirst.bmp", ;
ToolTipText = [³Ì«e¶], ;
Name = "cmdTop"
Add Object cmdPrev As PreToolbarCommandButton With ;
Left = 23, ;
Picture = "preprev.bmp", ;
ToolTipText = "¤W¤@¶", ;
Name = "cmdPrev"
Enddefine
Define Class CntNextClass As PreContainert
Add Object cmdNext As PreToolbarCommandButton With ;
Left = 0, ;
Picture = "prenext.bmp", ;
ToolTipText = "¤U¤@¶", ;
Name = "cmdNext"
Add Object cmdBott As PreToolbarCommandButton With ;
Top = 0,;
Left = 23,;
Picture = "prelast.bmp",;
ToolTipText = "³Ì«á¶",;
Name = "cmdBott"
Enddefine
Define Class frxpreviewtoolbar As Toolbar
Caption = "³øªí¹wÄý¤u¨ã±ø"
Height = 28
KeyPreview = .T.
Left = 0
Top = 0
Width = 564
ShowWindow = 1
previewform = .Null.
specialmousexcoord = 0
Name = "frxpreviewtoolbar"
Movable = .F.
Alias=[]
DataTool = .T.
Add Object cntprev As CntPrevClass With ;
Top = 3, ;
Left = 5, ;
Width = 46, ;
Height = 22, ;
BorderWidth = 0, ;
Name = "cntPrev"
Add Object separator1 As Separator With ;
Top = 3, ;
Left = 58, ;
Height = 0, ;
Width = 0, ;
Name = "Separator1"
Add Object cmdgotopage As PreToolbarCommandButton With ;
Top = 3, ;
Left = 58, ;
Height = 22, ;
Width = 100, ;
Picture = "gotopage.bmp", ;
Caption = " «ü©w¶", ;
ToolTipText = "«ü©w¶", ;
PicturePosition = 1, ;
Name = "cmdGoToPage"
Add Object separator3 As Separator With ;
Top = 3, ;
Left = 165, ;
Height = 0, ;
Width = 0, ;
Name = "Separator3"
Add Object cntnext As CntNextClass With ;
Top = 3, ;
Left = 165, ;
Width = 46, ;
Height = 22, ;
BorderWidth = 0, ;
Name = "cntNext"
Add Object separator2 As Separator With ;
Top = 3, ;
Left = 218, ;
Height = 0, ;
Width = 0, ;
Name = "Separator2"
Add Object cbozoom As ComboBox With ;
Height = 22, ;
Left = 218, ;
Style = 2, ;
TabStop = .F., ;
ToolTipText = "¿ï¾Ü¶±ÁY©ñ¤ñ¨Ò", ;
Top = 3, ;
DisplayCount = 5, ;
RowSourceType = 1,;
RowSource=[25,50,100,150,200,300,400,500],;
Value= [100],;
Name = "cboZoom"
Add Object separator4 As Separator With ;
Top = 3, ;
Left = 325, ;
Height = 0, ;
Width = 0, ;
Name = "Separator4"
Add Object opgpagecount As OpgPageCountClass With ;
ButtonCount = 3, ;
BorderStyle = 0, ;
Height = 22, ;
Left = 325, ;
Top = 3, ;
Width = 77, ;
Name = "opgPageCount"
Add Object separator5 As Separator With ;
Top = 3, ;
Left = 409, ;
Height = 0, ;
Width = 0, ;
Name = "Separator5"
Add Object cmdclose As PreToolbarCommandButton With ;
Top = 3, ;
Left = 409, ;
Height = 22, ;
Width = 75, ;
Picture = "preclose.bmp", ;
Caption = " Ãö³¬", ;
ToolTipText = "Ãö³¬¹wÄý", ;
PicturePosition = 1, ;
Name = "cmdClose"
Add Object cmdprint As PreToolbarCommandButton With ;
Top = 3, ;
Left = 484, ;
Height = 22, ;
Width = 75, ;
Picture = "print.bmp", ;
Caption = " ¥´¦L", ;
ToolTipText = "¥´¦L³øªí", ;
PicturePosition = 1, ;
Name = "cmdPrint"
Procedure Init
DoDefault()
With This
.Dock(0)
Endwith
Endproc
Procedure CboZoom.InteractiveChange
This.Parent.CboZooMInteractiveChange(This.Value)
Endproc
Procedure CboZooMInteractiveChange
Lparameters vVal
Endproc
Enddefine
*
*-- EndDefine: frxpreviewtoolbar
**************************************************
Define Class PreContainert As Container
Width = 200
Height = 112
BackStyle = 0
Name = "PreContainert"
Procedure Error
Lparameters nError, cMethod, nLine
This.Parent.Error( nError, cMethod, nLine )
Endproc
Procedure SetFocus
Local oControl
For Each oControl In This.Controls
If Type("oControl.TabIndex") = "N"
If oControl.TabIndex = 1
If Pemstatus( m.oControl,"setFocus",5)
oControl.SetFocus()
Nodefault
Endif
Exit
Endif
Endif
Endfor
Endproc
Procedure RightClick
This.Parent.RightClick()
Endproc
Enddefine
*-- ¦h¶Åã¥Ü
Define Class OpgPageCountClass As BaseOptiongroup
Add Object Opt1 As BaseOptionButton With ;
Picture = "1page.bmp", ;
PicturePosition = 13, ;
Caption = "", ;
Height = 38, ;
Left = 0, ;
SpecialEffect = 2, ;
Style = 1, ;
ToolTipText = "¤@ ¶", ;
Top = 0, ;
Width = 32, ;
AutoSize = .F., ;
Name = "Opt1"
Add Object Opt2 As BaseOptionButton With ;
Picture = "2page.bmp", ;
PicturePosition = 13, ;
Caption = "", ;
Height = 38, ;
Left = 25, ;
SpecialEffect = 2, ;
Style = 1, ;
ToolTipText = "¨â ¶", ;
Top = 0, ;
Width = 32, ;
AutoSize = .F., ;
Name = "Opt2"
Add Object Opt3 As BaseOptionButton With ;
Picture = "4page.bmp", ;
PicturePosition = 13, ;
Caption = "", ;
Height = 38, ;
Left = 50, ;
SpecialEffect = 2, ;
Style = 1, ;
ToolTipText = "¥| ¶", ;
Top = 0, ;
Width = 32, ;
AutoSize = .F., ;
Name = "Opt3"
Enddefine
*-- ¸õÂà¨ì«ü©w¶
Define Class frxgotopageform As Form
WindowType = 1
AutoCenter = .T.
Height = 92
Width = 345
ShowWindow = 1
DoCreate = .T.
BorderStyle = 2
Closable = .F.
MaxButton = .F.
MinButton = .F.
*-- Provides the current page number for report output.
PageNo = 0
*-- Provides a PageTotal for report output.
PageTotal = 0
Name = "frxgotopageform"
Caption = [«ü©w¶]
Add Object shp1 As Shape With ;
Top = 15, ;
Left = 12, ;
Height = 66, ;
Width = 224, ;
BackStyle = 0, ;
ZOrderSet = 0, ;
Style = 3, ;
Name = "Shp1"
Add Object spnpageno As BaseSpinner With ;
Height = 21, ;
InputMask = "9999", ;
Left = 52, ;
Top = 36, ;
Width = 138, ;
ZOrderSet = 1, ;
Name = "spnPageno"
Add Object lblcaption As Label With ;
AutoSize = .T.,;
Caption = "¸õÂà¦Ü¶", ;
Left = 20, ;
Top = 8, ;
ZOrderSet = 2, ;
Style = 3, ;
Name = "lblCaption"
Add Object cmdok As PreToolbarCommandButton With ;
Top = 16, ;
Left = 252, ;
Height = 23,;
Width = 75,;
Caption = "½T ©w", ;
Default = .T., ;
ZOrderSet = 3, ;
Name = "cmdOK"
Add Object cmdcancel As PreToolbarCommandButton With ;
Top = 49, ;
Left = 252, ;
Height = 23,;
Width = 75,;
Cancel = .T., ;
Caption = "¨ú ®ø", ;
ZOrderSet = 4, ;
Name = "cmdCancel"
Procedure Show
Lparameters nStyle
This.spnPageNo.SpinnerLowValue = 1
This.spnPageNo.SpinnerHighValue = This.PageTotal
*THIS.spnPageNo.KeyboardLowValue = 1
*THIS.spnPageNo.KeyboardHighValue = THIS.pageTotal
This.spnPageNo.Value = This.PageNo
DoDefault(nStyle)
Endproc
Procedure cmdok.Click
This.Parent.PageNo = This.Parent.spnPageNo.Value
This.Parent.Hide()
Endproc
Procedure cmdcancel.Click
This.Parent.Hide()
Endproc
Enddefine
*-- ¥´¦L¿ï¾Ü¶
Define Class frxPrintForm As Form
WindowType = 1
AutoCenter = .T.
Height = 155
Width = 345
ShowWindow = 1
DoCreate = .T.
BorderStyle = 2
Closable = .F.
MaxButton = .F.
MinButton = .F.
PrintOk = .F.
*-- Provides the current page number for report output.
PageNo = 0
*-- Provides a PageTotal for report output.
PageTotal = 0
Name = "frxgotopageform"
Caption = [¥´¦L]
Add Object shp1 As Shape With ;
Top = 15, ;
Left = 12, ;
Height = 125, ;
Width = 224, ;
BackStyle = 0, ;
ZOrderSet = 0, ;
Style = 3, ;
Name = "Shp1"
Add Object lblcaption As Label With ;
AutoSize = .T.,;
Caption = "¶½X½d³ò", ;
Left = 20, ;
Top = 8, ;
ZOrderSet = 2, ;
Style = 3, ;
Name = "lblCaption"
Add Object opgPrint As opgPrintClass With ;
Left =30, ;
Top =36
Add Object spnpagenoFrom As BaseSpinner With ;
Height = 21, ;
InputMask = "9999", ;
Left = 30, ;
Top = 105, ;
Width = 80, ;
ZOrderSet = 1, ;
Name = "spnPagenoFrom"
Add Object lblTo As Label With ;
AutoSize = .T.,;
Caption = "¦Ü", ;
Left = 115, ;
Top = 108, ;
ZOrderSet = 2, ;
Style = 3, ;
Name = "lblNo"
Add Object spnpagenoTo As BaseSpinner With ;
Height = 21, ;
InputMask = "9999", ;
Left = 130, ;
Top = 105, ;
Width = 80, ;
ZOrderSet = 1, ;
Name = "spnPagenoTo"
Add Object cmdok As PreToolbarCommandButton With ;
Top = 16, ;
Left = 252, ;
Height = 23,;
Width = 75,;
Caption = "¥´ ¦L", ;
Default = .T., ;
ZOrderSet = 3, ;
Name = "cmdOK"
Add Object cmdcancel As PreToolbarCommandButton With ;
Top = 49, ;
Left = 252, ;
Height = 23,;
Width = 75,;
Cancel = .T., ;
Caption = "¨ú ®ø", ;
ZOrderSet = 4, ;
Name = "cmdCancel"
Procedure Show
Lparameters nStyle
With This
.opgPrint.value = 1
.spnPageNoFrom.SpinnerLowValue = 1
.spnPageNoFrom.SpinnerHighValue = .PageTotal
.spnPageNoFrom.Value = .PageNo
.spnPageNoTo.SpinnerLowValue = 1
.spnPageNoTo.SpinnerHighValue = .PageTotal
.spnPageNoTo.Value = .PageTotal
.PrintOk = .F.
Endwith
DoDefault(nStyle)
Endproc
Procedure cmdok.Click
* This.Parent.PageNo = This.Parent.spnPageNo.Value
With This.Parent
If .opgPrint.Value = 3
If .spnPageNoFrom.Value > .spnPageNoTo.Value
=Messagebox("²×¤î¶¸¹³]¸mµL®Ä¡I", 48, "´£¥Ü")
Return 0
Endif
Endif
.PrintOk = .T.
.Hide()
Endwith
Endproc
Procedure cmdcancel.Click
This.Parent.Hide()
Endproc
Enddefine
Define Class OpgPrintClass As BaseOptiongroup
BorderStyle = 0
Value = 1
Add Object Opt1 As BaseOptionButton With ;
PicturePosition = 13, ;
Caption = "¥þ³¡", ;
Left = 0, ;
SpecialEffect = 2, ;
ToolTipText = "¥´¦L©Ò¦³¶", ;
Top = 0, ;
AutoSize = .T., ;
Name = "Opt1"
Add Object Opt2 As BaseOptionButton With ;
PicturePosition = 13, ;
Caption = "·í«e¶", ;
Height = 38, ;
Left = 0, ;
SpecialEffect = 2, ;
ToolTipText = "¥´¦L·í«e¶", ;
Top = 22,;
AutoSize = .T., ;
Name = "Opt2"
Add Object Opt3 As BaseOptionButton With ;
PicturePosition = 13, ;
Caption = "¶½X½d³ò", ;
Left = 0, ;
SpecialEffect = 2, ;
ToolTipText = "½Ð¿é¤J¶½X½d³ò", ;
Top = 44, ;
AutoSize = .T., ;
Name = "Opt3"
Enddefine
*-- ·L½Õ®Ø
Define Class BaseSpinner As Spinner
Height = 21
KeyboardLowValue = 0
SelectOnEntry = .T.
SpinnerLowValue = 0.00
Width = 121
incomingvalue = 0
Name = "spn"
Procedure resetincoming
This.incomingValue = This.Value
Endproc
Procedure LostFocus
If This.incomingValue <> This.Value
This.action()
Endif
Endproc
Procedure UpClick
If This.incomingValue <> This.Value
This.action()
This.resetIncoming()
Endif
Endproc
Procedure DownClick
If This.incomingValue <> This.Value
This.action()
This.resetIncoming()
Endif
Endproc
Procedure Error
Lparameters nError, cMethod, nLine
This.Parent.Error( nError, cMethod, nLine )
Endproc
Procedure GotFocus
This.resetIncoming()
Endproc
Procedure KeyPress
Lparameters iKey, iModifier
*----------------------------------
* Do not allow nulls to be entered
* with Ctrl-0 :
*----------------------------------
If m.iKey = 48 And 0 < Bitand( m.iModifier, 2 )
Nodefault
Endif
Endproc
Procedure action
Endproc
Procedure LostFocus
If This.Value < This.SpinnerLowValue
This.Value = 1
Endif
If This.Value > This.SpinnerHighValue
This.Value = This.SpinnerHighValue
Endif
DoDefault()
Endproc
Enddefine
*-- ¿ï¶µ«ö§á
Define Class BaseOptiongroup As OptionGroup
*MemberClassLibrary = "test.prg"
ButtonCount = 0
BackStyle = 0
BorderStyle = 1
Value = 0
Height = 66
Width = 117
Name = "opg"
*-- Specifies if the user can edit a control, or specifies if a table or view associated with a Cursor object allows updates.
ReadOnly = .F.
Procedure enabled_assign
Lparameter lEnabled
For Each optbut In This.Buttons
optbut.Enabled = m.lEnabled
Endfor
Endproc
Procedure readonly_assign
Lparameter lReadOnly
*
* Returning .F. in each button's .When() produces
* a more visually acceptable effect:
*
*for each optbut in this.Buttons
* optbut.Enabled = not m.lReadOnly
*endfor
This.ReadOnly = m.lReadOnly
Endproc
*-- Sets the focus to a control.
Procedure SetFocus
*----------------------------------------------------
* SetFocus() in containers doesn't work so well. This
* compensates for that bug by doing it manually:
*----------------------------------------------------
Local oControl
For Each oControl In This.Buttons
If oControl.TabIndex = 1
oControl.SetFocus()
Nodefault
Exit
Endif
Endfor
Endproc
Procedure RightClick
This.Parent.RightClick()
Endproc
Procedure Error
Lparameters nError, cMethod, nLine
This.Parent.Error( nError, cMethod, nLine )
Endproc
Enddefine
*-- ¿ï¶µ²Õ
Define Class BaseOptionbutton As OptionButton
Caption = "prompt"
Height = 15
Width = 52
AutoSize = .T.
Name = "opt"
Procedure Error
Lparameters nError, cMethod, nLine
This.Parent.Error( nError, cMethod, nLine )
Endproc
Procedure When
If This.Parent.ReadOnly
Return .F.
Else
Return .T.
Endif
Endproc
Procedure KeyPress
Lparameters iKey, iModifier
*----------------------------------
* Do not allow nulls to be entered
* with Ctrl-0 :
*----------------------------------
If m.iKey = 48 And 0 < Bitand( m.iModifier, 2 )
Nodefault
Endif
Endproc
Enddefine
**************************************************************************************************
*
*
**************************************************************************************************
*-- µ{§Ç¦WºÙ¡GRptPrint.prg
*-- µ{§Ç¥\¯à¡G¥H¦Û©w¸qªº¹ï¸Ü®ØÅã¥Ü³øªíªº¥´¦L³]¸m¡A¥H¨ú¥N¨t²Î¥´¦L³]¸mªº¤@¨Ç¤£¨¬
*-- ¨Ï¥Î¤èªk¡GRptPrint ( [<cReportName>] )
* ©ÎªÌ¡Gdo RptPrint [ with <cReportName> ]
*-- µ{§Ç»¡©ú¡GcReportName ¬° ³øªí¤å¥ó¦W¡]µL¶·±aÂX®i¦W¡^¡A¦pªG¬Ù²¤ªº¸Ü¡A«h¥iÅã¥Ü³]¸m¹ï¸Ü®Ø
* ³øªíªºÂX®i¦W¥H frx ¬°·Ç
*-- ì³Ð§@ªÌ¡G¬õªê
*-- Ápô¤è¦¡¡GE-mail: hu_feng@163.net
* HomePage: http://rts.coolbel.com
* Oicq: 1569040
*-- ½s¼g¤é´Á¡G2001¦~1¤ë
Func RptPrint
para rptname
*-- ³Ð«Ø¥´¦L³]¸m¹ï¸Ü®Ø
oPrintSetup=createobject("printsetup")
oPrintSetup.show
*-- ©w¸q¥´¦L³]¸m¹ï¸Ü®Ø
DEFINE CLASS printsetup AS form
Top = 11
Left = 115
Height = 270
Width = 531
Desktop = .T.
DoCreate = .T.
Caption = "³øªí¥´¦L³]¸m"
Name = "PRINTSETUP"
*-- ·s¼WÄÝ©Ê
nxcoord = 0 && ¥i¥H¨ÏÂIÀ»¹ï¸Ü®Ø´N¥i¥H©ì°Êªº§¤¼Ð
nycoord = 0
rptname = "" && ³øªíªº¤å¥ó¦W
ADD OBJECT shape1 AS shape WITH ;
Top = 12, ;
Left = 12, ;
Height = 144, ;
Width = 504, ;
Enabled = .F., ;
SpecialEffect = 0, ;
Name = "Shape1"
ADD OBJECT label1 AS label WITH ;
AutoSize = .T., ;
Caption = "¥´¦L¾÷", ;
Height = 16, ;
Left = 22, ;
Top = 9, ;
Width = 38, ;
Name = "Label1"
*-- ¦s©ñ¥Ø«e¦w¸Ëªº¥´¦L¾÷ªº¦WºÙ¦Cªí
ADD OBJECT printerlist AS combobox WITH ;
Alignment = 0, ;
Height = 22, ;
Left = 112, ;
Style = 2, ;
Top = 33, ;
Width = 260, ;
Name = "PrinterList"
ADD OBJECT label2 AS label WITH ;
AutoSize = .T., ;
Caption = "¥´¦L¾÷¦W(\<N)¡G", ;
Height = 16, ;
Left = 24, ;
Top = 36, ;
Width = 86, ;
Name = "Label2"
ADD OBJECT label3 AS label WITH ;
AutoSize = .T., ;
Caption = "ª¬ºA¡G", ;
Height = 16, ;
Left = 24, ;
Top = 60, ;
Width = 38, ;
Name = "Label3"
ADD OBJECT label4 AS label WITH ;
AutoSize = .T., ;
Caption = "Ãþ«¬¡G", ;
Height = 16, ;
Left = 24, ;
Top = 84, ;
Width = 38, ;
Name = "Label4"
ADD OBJECT label5 AS label WITH ;
AutoSize = .T., ;
Caption = "¦ì¸m¡G", ;
Height = 16, ;
Left = 24, ;
Top = 108, ;
Width = 38, ;
Name = "Label5"
ADD OBJECT label6 AS label WITH ;
AutoSize = .T., ;
Caption = "¯È±i¡G", ;
Height = 16, ;
Left = 24, ;
Top = 132, ;
Width = 38, ;
Name = "Label6"
*-- Åã¥Ü¥´¦L¾÷ªº¦ì¸mªº¼ÐÅÒ
ADD OBJECT printerlocation AS label WITH ;
AutoSize = .T., ;
Caption = "PrinterLocation", ;
Height = 16, ;
Left = 112, ;
Top = 108, ;
Width = 92, ;
Name = "PrinterLocation"
ADD OBJECT cmdok AS commandbutton WITH ;
Top = 178, ;
Left = 442, ;
Height = 25, ;
Width = 66, ;
Caption = "½T©w", ;
Default = .T., ;
Name = "cmdOk"
*-- ¥´¦L¾÷ª¬ºA¼ÐÅÒ
ADD OBJECT printerstatus AS label WITH ;
AutoSize = .T., ;
Caption = "PrinterStatus", ;
Height = 16, ;
Left = 112, ;
Top = 60, ;
Width = 80, ;
Name = "PrinterStatus"
ADD OBJECT command1 AS commandbutton WITH ;
Top = 226, ;
Left = 442, ;
Height = 25, ;
Width = 66, ;
Cancel = .T., ;
Caption = "¨ú®ø", ;
Name = "Command1"
ADD OBJECT shape5 AS shape WITH ;
Top = 171, ;
Left = 14, ;
Height = 84, ;
Width = 252, ;
Enabled = .F., ;
SpecialEffect = 0, ;
Name = "Shape5"
ADD OBJECT label11 AS label WITH ;
AutoSize = .T., ;
Caption = "¥´¦L½d³ò", ;
Height = 16, ;
Left = 24, ;
Top = 168, ;
Width = 50, ;
Name = "Label11"
ADD OBJECT shape6 AS shape WITH ;
Top = 170, ;
Left = 276, ;
Height = 84, ;
Width = 143, ;
Enabled = .F., ;
SpecialEffect = 0, ;
Name = "Shape6"
ADD OBJECT label12 AS label WITH ;
AutoSize = .T., ;
Caption = "¥÷¼Æ", ;
Height = 16, ;
Left = 286, ;
Top = 167, ;
Width = 26, ;
Name = "Label12"
*-- ¥´¦L½d³ò¿ï¾Ü
ADD OBJECT optiongroup2 AS optiongroup WITH ;
AutoSize = .F., ;
ButtonCount = 3, ;
BackStyle = 0, ;
BorderStyle = 0, ;
Value = 1, ;
Enabled = .T., ;
Height = 62, ;
Left = 25, ;
Top = 184, ;
Width = 236, ;
Name = "Optiongroup2", ;
Option1.Caption = "¥þ³¡(\<A)", ;
Option1.Value = 1, ;
Option1.Height = 16, ;
Option1.Left = 5, ;
Option1.Style = 0, ;
Option1.Top = 5, ;
Option1.Width = 69, ;
Option1.AutoSize = .T., ;
Option1.Name = "Option1", ;
Option2.Caption = "·í«e¶(\<E)", ;
Option2.Height = 16, ;
Option2.Left = 82, ;
Option2.Style = 0, ;
Option2.Top = 5, ;
Option2.Width = 81, ;
Option2.AutoSize = .T., ;
Option2.Name = "Option2", ;
Option3.Caption = "¶½X(\<G)", ;
Option3.Height = 16, ;
Option3.Left = 5, ;
Option3.Style = 0, ;
Option3.Top = 34, ;
Option3.Width = 69, ;
Option3.AutoSize = .T., ;
Option3.Name = "Option3"
*-- ¥´¦L°_©l¶
ADD OBJECT pbpage AS textbox WITH ;
Alignment = 3, ;
Value = 1, ;
Enabled = .F., ;
Height = 20, ;
InputMask = "9999", ;
Left = 120, ;
SelectOnEntry = .T., ;
Top = 219, ;
Width = 49, ;
Name = "pbpage"
*-- ¥´¦L¤À¼Æ
ADD OBJECT copy AS spinner WITH ;
Height = 20, ;
KeyboardLowValue = 1, ;
Left = 338, ;
SpinnerLowValue = 1.00, ;
Top = 192, ;
Width = 72, ;
Value = 1, ;
Name = "copy"
*-- ¬O§_³v¥÷¥´¦L,ÁÙ¬O³v¶
ADD OBJECT check1 AS checkbox WITH ;
Top = 229, ;
Left = 338, ;
Height = 16, ;
Width = 69, ;
AutoSize = .T., ;
Caption = "³v¥÷¥´¦L", ;
Value = .T., ;
Name = "Check1"
ADD OBJECT label14 AS label WITH ;
AutoSize = .T., ;
Caption = "¥÷¼Æ(\<C)", ;
Height = 16, ;
Left = 288, ;
Top = 194, ;
Width = 50, ;
Name = "Label14"
*-- µ²§ô¶¼Æ
ADD OBJECT pepage AS textbox WITH ;
Alignment = 3, ;
Value = _pepage, ;
Enabled = .F., ;
Height = 20, ;
InputMask = "9999", ;
Left = 196, ;
SelectOnEntry = .T., ;
Top = 219, ;
Width = 49, ;
Name = "pepage"
ADD OBJECT label15 AS label WITH ;
AutoSize = .T., ;
Caption = "±q", ;
Height = 16, ;
Left = 104, ;
Top = 221, ;
Width = 14, ;
Name = "Label15"
ADD OBJECT label16 AS label WITH ;
AutoSize = .T., ;
Caption = "¨ì", ;
Height = 16, ;
Left = 178, ;
Top = 221, ;
Width = 14, ;
Name = "Label16"
ADD OBJECT command2 AS commandbutton WITH ;
Top = 33, ;
Left = 388, ;
Height = 25, ;
Width = 109, ;
Caption = "¥´¦L¾÷³]¸m(\<S)...", ;
Name = "Command2"
*-- ¯È±iÃþ«¬¤Î¤è¦V
ADD OBJECT papertype AS label WITH ;
AutoSize = .T., ;
Caption = "PaperType", ;
Height = 16, ;
Left = 112, ;
Top = 132, ;
Width = 56, ;
Name = "PaperType"
*-- ·í«e¶¸¹
ADD OBJECT pageno AS textbox WITH ;
Alignment = 3, ;
Value = 9999, ;
Enabled = .F., ;
Height = 20, ;
InputMask = "9999", ;
Left = 196, ;
SelectOnEntry = .T., ;
Top = 190, ;
Width = 49, ;
Name = "pageno"
PROCEDURE getprinterinfo
*-- Àò¨ú¥´¦L¾÷«H®§
* ¨Ã¦s©ñ¨ì¼Æ²Õ paPrinter ¤¤
* pnPrinterNo ¥Î¨Ó¦s©ñ¥´¦L¾÷ªºÓ¼Æ
thisform.PrinterLocation.caption = paPrinter(pnPrinterNo,2)
*-- ¥´¦L¾÷ª¬ºA
thisform.PrinterStatus.caption = sys(13)
ENDPROC
PROCEDURE getpaper
*-- ³q¹L RPTINFO() ¨ç¼Æ¨ÓÀò±o¥´¦L¾÷ªº¯È±i³]¸mÃþ«¬¤Î¤è¦V
dime paper_list(41)
paper_list(1) = "Letter, 8 1/2 x 11 in"
paper_list(2) = "Letter Small, 8 1/2 x 11 in"
paper_list(3) = "Tabloid, 11 x 17 in"
paper_list(4) = "Ledger, 17 x 11 in"
paper_list(5) = "Legal, 8 1/2 x 14 in"
paper_list(6) = "Statement, 5 1/2 x 8 1/2 in"
paper_list(7) = "Executive, 7 1/4 x 10 1/2 in"
paper_list(8) = "A3, 297 x 420 mm"
paper_list(9) = "A4, 210 x 297 mm"
paper_list(10) = "A4, Small 210 x 297 mm"
paper_list(11) = "A5, 148 x 210 mm"
paper_list(12) = "B4, 250 x 354 mm"
paper_list(13) = "B5, 182 x 257 mm"
paper_list(14) = "Folio, 8 1/2 x 13 in"
paper_list(15) = "Quarto, 215 x 275 mm"
paper_list(16) = "10 x 14 in"
paper_list(17) = "11 x 17 in"
paper_list(18) = "Note, 8 1/2 x 11 in"
paper_list(19) = "Envelope #9, 3 7/8 x 8 7/8 in"
paper_list(20) = "Envelope #10, 4 1/8 x 9 1/2 in"
paper_list(21) = "Envelope #11, 4 1/2 x 10 3/8 in"
paper_list(22) = "Envelope #12, 4 1/2 x 11 in"
paper_list(23) = "Envelope #14, 5 x 11 1/2 in"
paper_list(24) = "C size sheet"
paper_list(25) = "D size sheet"
paper_list(26) = "E size sheet"
paper_list(27) = "Envelope DL, 110 x 220 mm"
paper_list(28) = "Envelope C5, 162 x 229 mm"
paper_list(29) = "Envelope C3, 324 x 458 mm"
paper_list(30) = "Envelope C4, 229 x 324 mm"
paper_list(31) = "Envelope C6, 114 x 162 mm"
paper_list(32) = "Envelope C65, 114 x 229 mm"
paper_list(33) = "Envelope B4, 250 x 353 mm"
paper_list(34) = "Envelope B5, 176 x 250 mm"
paper_list(35) = "Envelope B6, 176 x 125 mm"
paper_list(36) = "Envelope, 110 x 230 mm"
paper_list(37) = "Envelope Monarch, 3 7/8 x 7.5 in"
paper_list(38) = "6 3/4 Envelope, 3 5/8 x 6 1/2 in"
paper_list(39) = "US Std Fanfold, 14 7/8 x 11 in"
paper_list(40) = "German Std Fanfold, 8 1/2 x 12 in"
paper_list(41) = "German Legal Fanfold, 8 1/2 x 13 in "
RETU PAPER_LIST(prtinfo(2)) + "¡A" + iif(prtinfo(1)=0,"Áa¦V","¾î¦V")
ENDPROC
PROCEDURE MouseMove
*-- ¥Î¹«¼Ð©ì°Êªí³æªº²¾°Ê
Lparameters nButton, nShift, nxcoord, nycoord
With Thisform
if mdown() and nButton = 1
.top = (nycoord - this.nycoord) + .top + 1
.left = (nxcoord - this.nxcoord) + .left + 1
endif
Endwith
ENDPROC
PROCEDURE MouseDown
*-- ·í¹«¼Ð¦bªí³æ¤W«ö¤U®É¡A°O¤Uªí³æªº§¤¼Ð¦ì¸m
Lparameters nButton, nShift, nxcoord, nycoord
This.nxcoord = nxcoord
This.nycoord = nycoord
ENDPROC
PROCEDURE Init
*-- ªí³æªì©l¤Æ ...
With thisform
.rptname = rptname
.MinButton = .F.
.MaxButton = .F.
.Borderstyle= 2
.WindowType = 1
.AutoCenter = .T.
.pageno.value = _pageno
Endwith
if type("paPrinter") = "U" or type("pnPrinterNo") # "N"
public paPrinter(1,2),pnPrinterNo
pnPrinterNo = 1
endif
*-- Àò¨ú¥´¦L¾÷«H®§,¨Ã¦s¤J¼Æ²Õ¤¤
nPrinterNum = APRINTERS(paPrinter)
With ThisForm.PrinterList
if nPrinterNum = 0
.value = "¨S¦³¦w¸Ë¥´¦L¾÷"
else
.clear
For n = 1 to nPrinterNum
.additem(paPrinter(n,1))
Endfor
.listindex = pnPrinterNo
endif
Endwith
*-- Àò¨ú¥´¦L¾÷ªº«H®§
thisform.GetPrinterInfo()
*-- Àò¨ú¯È±i¤Î¤è¦V
thisform.papertype.caption = thisform.getpaper()
ENDPROC
*-- §ïÅÜ¥´¦L¾÷¦Cªíªº¨Æ¥ó
PROCEDURE printerlist.InteractiveChange
pnPrinterNo = this.listindex
cCurPrinter = thisform.PrinterList.value
set printer to name "&cCurPrinter"
*-- «·sÀò¨ú¥´¦L¾÷ªº«H®§¤Î¤j¤p©M¤è¦V
thisform.GetPrinterInfo
thisform.papertype.caption = thisform.GetPaper()
ENDPROC
PROCEDURE cmdok.Click
*-- ³]¸m¥´¦L¾÷
cCurPrinter = thisform.PrinterList.value
set printer to name "&cCurPrinter"
pnPrinterNo = thisform.PrinterList.listindex
*-- Àò±o¥´¦L½d³ò
pbpage = 1
pepage = _pepage
With ThisForm.Optiongroup2
do case
case .value = 1
pbpage = 1
pepage = _pepage
case .value = 2
pbpage = _pageno
pepage = _pageno
case .value = 3
pbpage = ThisForm.pbpage.value
pepage = ThisForm.pepage.value
if pbpage > pepage or pbpage > _pepage or pbpage <= 0
messagebox("¶½X³]¸m¿ù»~¡I",48,"ĵ§i")
thisform.pbpage.setfocus
retu
endif
endcase
Endwith
RptName = thisform.rptname
if !empty(rptname)
nCopy = thisform.copy.value
isOneByOne = thisform.check1.value
if isOneByOne && ³v¥÷¥´¦L
for n=1 to nCopy
wait windo "¥¿¦b¿é¥X¥´¦L ..." + allt(str(n)) + "/" + allt(str(nCopy)) + "«ö ESC ¨ú®ø¡I" nowait
if inkey(1) = 27
exit
endif
report form "&RptName" nocon noeject range pbpage,pepage to print
endfor
else
nMax = (pepage-pbpage)*nCopy
i = 1
for n=pbpage to pepage && ³v¶¥´¦L
for m=1 to nCopy
wait window "¥¿¦b¿é¥X¥´¦L ..." + allt(str(i)) + "/" + allt(str(nMax)) + "«ö ESC ¨ú®ø¡I" nowait
report form "&RptName" nocon noeject range n,n to print
i = i + 1
if inkey(1) = 27
i = 0
exit
endif
endfor
if i=0
exit
endif
endfor
endif
endif
thisform.release
ENDPROC
PROCEDURE command1.Click
thisform.release
ENDPROC
PROCEDURE optiongroup2.InteractiveChange
ThisForm.pbpage.enabled = IIF(this.value = 3,.T.,.F.)
ThisForm.pepage.enabled = ThisForm.pbpage.enabled
thisform.pbpage.setfocus
ENDPROC
PROCEDURE command2.Click
=sys(1037)
thisform.GetPrinterInfo
thisform.papertype.caption = thisform.GetPaper()
ENDPROC
ENDDEFINE
*
*-- µ²§ô©w¸q: printsetup
|
_________________ §Q¥Î>>·j´M<<ªº¥\¯à·|¤ñ°ÝªºÁÙn§Ö±o¨ìµª®×. |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 23 ¼Ó
|
µoªí©ó: ¬P´Á¥| ¤G¤ë 27, 2014 10:51 am ¤å³¹¥DÃD: |
|
|
¥H¤Wªº¤èªk³£¦³¯ÊÂI
¥Î¥~±¾³nÅé,¦ppicpick,Áö¦³¤Q¦r½u,
¦ýYn¥h«ö¹wÄý¤u¨ã¦C¤Wªº«ö¶s©Î©Ô±²¶b®É,
´N¤£¯à«ö°Õ
¦Ógarfieldªºµ{¦¡½X,ÁöµM¦b form ¤W¦³¤Q¦r½u,
¦ý¦b Report ¤W¤´µM¨S¦³
³Ì«á§Úקï FoxyPreviewer ªº¤@¤p¬qµ{¦¡½X,
²×©ó¸Ñ¨M¤F³oÓ°ÝÃD
¦p¹Ï |
|
¦^³»ºÝ |
|
|
55812296
µù¥U®É¶¡: 2012-09-19 ¤å³¹: 49
²Ä 24 ¼Ó
|
µoªí©ó: ¬P´Á¥| ¤G¤ë 27, 2014 2:42 pm ¤å³¹¥DÃD: |
|
|
ckp6250 ¼g¨ì: | ³oÓ°ÝÃD¡A§ÚÓ¤H´N¦¹¥´¦í°Õ¡A¹ê¦b¬O¨Sªk«×¡AÀ°¤£¤W¦£¡C
´«Ó¸ÜÃD¡A
¦pªG¡A¦³¤@¤Ñ¡AUSER§Æ±æ¡y·Æ¹«²¾¨ì¨º¸Ì¡AÂI¤G¤U¡A¹³ Google Map¤@¼Ë¡A§â¥¦§½³¡©ñ¤j¡A¥H§Q¾\Ū¡z¡A
±z·|«ç»ò¿ì¡H |
³o´N¤ñ¸û²³æ ÂI¤G¤U ¶]¥X¤@Ó¤pFORM ¸Ì±Åã¥Ü¸ÓÄæ¸ê®Æ |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 25 ¼Ó
|
µoªí©ó: ¬P´Á¥| ¤G¤ë 27, 2014 2:55 pm ¤å³¹¥DÃD: |
|
|
55812296 ¼g¨ì: |
³o´N¤ñ¸û²³æ ÂI¤G¤U ¶]¥X¤@Ó¤pFORM ¸Ì±Åã¥Ü¸ÓÄæ¸ê®Æ |
¦b Report ¹wÄý®É , nÂI¤G¤U , ¶]¥X¤@Ó¤pFORM ,
³o¥i¤@ÂI³£¤£Â²³æ?
n¦p¦ó°»´ú , ¨Ï¥ÎªÌ©ÒÂIªº¨ºÓ Report ¤W, ¬O¤°»ò¸ê®Æ ? |
|
¦^³»ºÝ |
|
|
arthur
µù¥U®É¶¡: 2003-11-05 ¤å³¹: 18
²Ä 26 ¼Ó
|
µoªí©ó: ¬P´Á¤» ¤T¤ë 01, 2014 1:41 pm ¤å³¹¥DÃD: |
|
|
ckp6250:
FoxyPreviewer§Ú¤]¤@ª½¦bÃöª`,§A¬O§ï¨º¤@¬qµ{§Ç?
¯à«ü¾É¶Ü? |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 27 ¼Ó
|
µoªí©ó: ¬P´Á¤» ¤T¤ë 01, 2014 2:29 pm ¤å³¹¥DÃD: |
|
|
§Ú¬OÅý¨Ï¥ÎªÌ¦b»Ýn¤Q¦r½u®É,
«ö¤U ins , ¦b mouse ©Ò¦bªº¦ì¸m¤W,
¥h²£¥Í¨º±ø¤Q¦r½u,
¦pªG¨Ï¥ÎªÌ²¾°Ê mouse , ¦A««ö ins ®É
²M±¼Âªº,«¹º·sªº
Foxypreviewer.prg קï¤Q´X¦æ,¦p¤U
¥N½X: |
Procedure HandledKeyPress( nKeyCode, nShiftAltCtrl )
Do Case
Case nKeyCode = 22 && Ins
vCol = Mcol(0,3)
vRow = Mrow(0,3)
With This.PreviewForm
.Cls
.DrawStyle = 3
.ForeColor = Rgb(255,0,0)
.Line(0,vRow,_Screen.Width,vRow)
.Line(vCol,0,vCol,_Screen.Height*64)
Endwith
Endcase
Return .F.
Endproc
|
¨ä¹ê , FoxyPreviewer ¬O open source ,
¯àÅý§ÚÌ¥[ªo²K¾Lªº¦a¤è«Ü¦h,
³o¬O§Ú¬°¦ó¤O±Àªº¥D¦] |
|
¦^³»ºÝ |
|
|
arthur
µù¥U®É¶¡: 2003-11-05 ¤å³¹: 18
²Ä 28 ¼Ó
|
µoªí©ó: ¬P´Á¤» ¤¤ë 17, 2014 8:08 pm ¤å³¹¥DÃD: |
|
|
§Ú¨Ì·Ó±zªº¤è¦¡´ú¸Õı±o©ñ¦bHandledKeyPress()§Q¥Î®·®»«öÁä¤è¦¡¨Ã¤£¤Ó²z·Q,¦]¬°:
(1) ¥ÎInsert´¡¤J«öÁä¨Ó±±¨îµ¥³øªíµ²§ô«á¥i¯à§ïÅܶi¤J³øªí«eªº´¡¤J©ÎÂл\ªº¿é¤Jª¬ªp.
(2) ·Æ¹«¦ì¸m¦pªG¦b¨S¦³¦r¤¸ªº¦a¤è(³øªí¯d¥Õªº¦a¤è)¤Q¦r½u±`±`¤£·|¥X²{,³o®É¤Sn²¾°Ê·Æ¹«¦A«öInsert,³on¤ÏÂЦn´X¦¸¤Q¦r½u¤~·|¦b³øªí¤W,³o¼ËÅý¨Ï¥ÎªÌ¦b¾Þ§@¤W¤£¤è«K.
(3) ²Ä(1)Ó°ÝÃD¥i¥H¥Î¨ä¥L¥\¯àÁä¨Ó¥N´À,¦ý(2)°ÝÃD¤´¨S¦³¦nªº¸Ñ¨M¤è¦¡,¦]¦¹¤£¥Î¦b®·®»Áä½L«öÁä¤è¦¡Åã¥Ü¤Q¦r½u.
(4) ³Ì«á§Ú¨M©w¥ÎCtrl+MouseMove¨ÓÅã¥Ü¤Q¦r½u,¤]´N¬O·í¨Ï¥ÎªÌ«ö¤UCtrl«öÁ䤣©ñµM«á²¾°Ê·Æ¹«,«h¤Q¦r½u´N·|¨Ì¥Ø«e·Æ¹«¦ì¸m¤@ª½µe¥X·sªº¥X¨Ó,µ¥¨Ï¥ÎªÌ¨M©w¤Q¦r½uªº¦ì¸m«á¦A©ñ¶}CtrlÁä´N¥i¥H¤F.
¦Ó¦¹¬qµ{§Ç¥²¶·¼g¦b:FrxPreView.Vcx->FrxBaseForm->MouseMove()¤èªkµ{§Ç¤¤. |
|
¦^³»ºÝ |
|
|
arthur
µù¥U®É¶¡: 2003-11-05 ¤å³¹: 18
²Ä 29 ¼Ó
|
µoªí©ó: ¬P´Á¤» ¤¤ë 17, 2014 8:13 pm ¤å³¹¥DÃD: |
|
|
FrxPreView.Vcx->FrxBaseForm->MouseMove() |
|
¦^³»ºÝ |
|
|
ckp6250
µù¥U®É¶¡: 2004-07-30 ¤å³¹: 1644
²Ä 30 ¼Ó
|
µoªí©ó: ¬P´Á¤é ¤¤ë 18, 2014 11:12 am ¤å³¹¥DÃD: |
|
|
³o´N¬O open source °g¤H¤§³B
¦U¨ú©Ò»Ý , ¦U§ï©Ò»Ý
°£¤F FrxPreView ¤§¥~ , Report Sculptor ¤]¦³Ãþ¤Q¦r½uªº¥\¯à,
¤£¥Î§ï,¥¦¦Û¤v¦³
¤]¬O open source
§Úı±o¤£»¹©ó FrxPreView
§ó¦³³\¦h¯S¦â¬O FrePreView ©Ò¨S¦³ªº
§ÚÁÙ¨S¬ã¨s«Ü²`¤J
±z¥i¥H¸Õ¬Ý¬Ý
http://vfp.sunyear.com.tw/viewtopic.php?t=6307 |
|
¦^³»ºÝ |
|
|
|
|
±z µLªk ¦b³oÓª©±µoªí¤å³¹ ±z µLªk ¦b³oÓª©±¦^ÂФ峹 ±z µLªk ¦b³oÓª©±½s¿è¤å³¹ ±z µLªk ¦b³oÓª©±§R°£¤å³¹ ±z µLªk ¦b³oÓª©±¶i¦æ§ë²¼ ±z µLªk ¦b³oÓª©±ªþ¥[ÀÉ®× ±z µLªk ¦b³oÓª©±¤U¸üÀÉ®×
|
Powered by phpBB © 2001, 2005 phpBB Group ¥¿Å餤¤å»y¨t¥Ñ phpbb-tw ºûÅ@»s§@
|