标题:关于报表大小问题的困惑
只看楼主
fnxyy
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2009-3-25
结帖率:0
已结贴  问题点数:10 回复次数:5 
关于报表大小问题的困惑
各位给说说,制作一个程序,在VFP环境中报表设为最大化后,每次在VFP环境中打开也都最大化,但一连编成EXE文件后,每次打开报表都是一个固定大小(不是最大化),请问如何才能在EXE环境中也让报表最大化
搜索更多相关主题的帖子: 困惑 如何 
2013-01-23 09:16
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:3 
连编成EXE文件后,每次打开报表都不是最大化?没遇过
另外 连编成EXE后 不用管报表是否最大化的 直接打印啊
2013-01-23 09:21
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:3 
自定义一个报表打印浏览界面,就不会出现这个问题了

坚守VFP最后的阵地
2013-01-23 22:16
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
得分:3 
楼主可能是说打印浏览,每次打开时不能最大化。
如果是这样,只要点击浏览界面右上角的最大化按钮,再关闭浏览界面。以后再浏览时,就是最大化了。

[ 本帖最后由 qjbzjp 于 2013-1-23 22:36 编辑 ]

相互学习,互相交流,共同提高。
2013-01-23 22:27
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:3 
用3楼的办法没错。

活到老,学到老! http://www. E-mail:hu-jj@
2013-01-24 11:17
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
**怎样定制打印预览窗口?
**在打印预览表单中定制标题栏的一个途径

怎样定制打印预览窗口?

问:
有什么办法可以定制打印预览窗口的标题和工具栏?

我想要移去在右上角的那些按钮,这样在工具栏上的退出按钮就可以保证是退出的唯一选择。

回答:
VFP不允许对打印预览窗口的更多控制。所以你可能想要使用其他的报表编辑器——无论如何,对你提到的那些问题我们还是可以做一些事情的。Report 有一个 WindowName 选项。还有,如果你使用 REPORT NOWAIT 命令,那么你可以使用 ACTIVATE WINDOW 在任何窗口(包括顶层表单)中预览。

至于工具栏,你对它的修改被保存在 foxuser.dbf 中。你可以新建一个,定制工具栏,然后用另一个文件名保存 foxuser.dbf。在你打印预览前,用 SET RESOURCE to 把 foxuser.dbf 指定为你的自定义 foxuser.dbf。

在打印预览表单中定制标题栏的一个途径

在打印预览表单中定制标题栏并不是一件困难的事情,秘诀在于:

1、定义一个用于打印预览的窗口:(DefinirForma)

2、运行报表:(DO DOVistaPrevia)

**定义打印预览窗口的代码
PUBLIC oForm
IF !UPPER("FOXTOOLS") $ SET("LIBRARY")
SET LIBRARY TO HOME() + "Foxtools.Fll"
ENDIF
DO DefinirForma
DO DOVistaPrevia
RETURN

**表单定义
PROCEDURE DefinirForma
oForm = NEWOBJECT("Form002", "", "", "一个自定义打印预览窗口的例子")
oForm.Show

DEFINE CLASS Form002 AS Form
AutoCenter = .T.
BorderStyle = 3
Caption = "APLIC_NAME" && 这个标题是可以改变的
Desktop = .T.
DoCreate = .T.
FontBold = .T.
FontName = "MS Sans Serif"
FontSize = 8
Height = 350
Name = "Form002"
ShowWindow = 2
SizeBox = .T.
TabStop = .F.
Tag = "501"
TitleBar = 0 && **** 重要!不要改动 ****
Width = 474

PROCEDURE Init
LPARAMETERS lcCaption
LOCAL lnWHandle
THIS.Caption = lcCaption
*-- 这里设置的标题将不会显示
_WSetTitle(_WFindTitl(THIS.Caption), THIS.Caption)
ENDPROC
ENDDEFINE
ENDPROC

*-- Procedure DoVistaPrevia
PROCEDURE DoVistaPrevia
LOCAL lcAlias
lcAlias = ALIAS()
CREATE CURSOR TempDbf (TempMemo m)
SELECT TempDbf
APPEND BLANK
REPLACE TempDbf.TempMemo WITH "这是一个自定义打印预览窗口的例子" + CHR(13) + "不是一个完美的方法"
REPORT FORM UserRpt NOCONSOLE PREVIEW IN WINDOW Form002
SELECT TempDbf
USE
IF !EMPTY(lcAlias) AND USED(lcAlias)
SELECT (lcAlias)
ENDIF
RELEASE WINDOWS Form002
ENDPROC

这就是全部内容。秘诀在下面这些地方:

1、在表单定义中:
TitleBar = 0 && **** 重要!不要改动 ****

2、在用于打印预览的表单的INIT方法中:
_WSetTitle(_WFindTitl(THIS.Caption), THIS.Caption)

3、在菜单代码中:
REPORT FORM UserRpt NOCONSOLE PREVIEW IN WINDOW Form002


文章出处:飞诺网(www.):http://www.

坚守VFP最后的阵地
2013-01-24 11:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-397352-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.306668 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved