VisualFoxpro中表格控件设计技巧二例

合集下载

VFP表单设计小技巧

VFP表单设计小技巧

VFP表单设计小技巧1.设计Tab键顺序.当表单中控件较多时,利用特性页来设置TabIndex特性就变得很慢了,你可以得用Shift键来设计其顺序.你可以选择”查看/Tab键次序”菜单,这时,在每个控件的左上角出现一个小方框. 按下Shift键并按顺序单击每个控件,然后单击”重新排序”按钮即可.2.把”形状”放在后面.当你希望在表单中把颜色背景放在一些控件的后面时,可简单击表单布局工具栏的”形状”按钮,并在屏幕上拖出一个长方形的外形.若要把它移到现有控件之后,可单击”格式/置后”菜单或在布局工具栏中单击”置后”图标即可.3.修理损坏的表单.VFP把每个表单集或表单保存在以扩展名为.SCX的表中.每个表单的.SCX文件都有个以.SCT为扩展名的同名备注文件.表单中的每个控件在.SCX文件中都有一个记录,若某个控件的错误很可能使整个.SCX文件打不开而不能使用,这时你不要放弃整个表单,因为只是某条记录使VFP遇到了麻烦.改正这一问题的一种方法是把表单的.SCX方件当作表打开对它进行编辑.首先对.SCX和.SCT文件进行备份,然后在命令窗口中用USE FormName.SCX 命令打开表单并用BROW命令进行浏览,在.SCX文件中打开损坏了的记录中有总是的备注型字段并改正这一总是或删除这一行.如果总是存在于方法列中,可能需要将方法代码拷贝到一个文本文件中,删除Object 备注字段中的内容,然后根据文本文件重方法即可.4.加快刷新速度.通常,当一个控件限于内存变量,数级或特性中的数据时,没有必要调用Refresh 方法来更新控件的显示.因为这样需要大量的处理程序和图形资源,影响运行速度.如果控件限于表或缓冲区中的数据以及数据变化时,确实需要刷新这些控件,你可以加入以下代码:thisform.LockScreen=.T.thisform.Refresh()thisform.LockScreen=.F.。

Visual FoxPro VF第9章 表单设计及应用(2)

Visual FoxPro  VF第9章 表单设计及应用(2)

8.2 创建与管理表单
8.2.3 表单生成器
在表单设计环境下,可以调用表单生成器快速地产 生表单。调用表单生成器的方法有以下3种: (1)在系统菜单中选择“表单”菜单下的“快速表单” 命令。 (2)单击“表单设计器”工具栏中的“表单生成器”按 钮。 (3)右键单击表单窗口,然后在弹出的快捷菜单中选择 “生成器”命令。
Visual FoxPro数据库应用教程 7
8.1 面向对象程序设计的概念
在VFP中,当对象被创建后,就可以调用这 个对象的方法了。为对象设置方法的命令格式 如下: <对象引用>.<方法> 【例8.2】调用当前表单的方法,使文本框Textl获 得焦点,然后刷新表单。 Thisform.Textl.Setfocus Thisform.Refresh
Visual FoxPro数据库应用教程
2
8.1 面向对象程序设计的概念
8.1.2 常用对象的基类、容器类与控件类
1.容器类 容器(Container)类是能够包含其他对象的类。 容器对象称为父对象,其包含的对象称为子对象。 2.控件类 控件(Control)是指容器类对象内的一个图形 化的、能与用户进行交互的对象。控件类对象不 能容纳其他对象,如命令按钮、选择按钮、复选 框、文本框、标签等控件对象。
4.代码窗口
图8.21 代码窗口
Visual FoxPro数据库应用教程
18
8.3 表单设计器
8.3.2 表单的数据环境
1.打开数据环境设计器 打开数据环境设计器的方法有以下几种: (1)在表单设计器环境下,选择“显示”菜单中的“数据 环境”命令。 (2)单击“表单设计器”工具栏中的“数据环境”按钮。 (3)右键单击表单,从快捷菜单中选择“数据环境”命令。 打开数据环境设计器后,系统菜单栏上将出现“数据环境” 菜单。 2.数据信息与数据环境

Visual Foxpro中如何实现对EXCEL表格的操作

Visual Foxpro中如何实现对EXCEL表格的操作

Visual Foxpro中如何实现对EXCEL表格的操作VFP和Excel都可以用来进行处理数据库表格,如果巧妙地将二者的优点结合起来,将会大大方便我们的工作。

比如我们可以利用VFP进行处理数据,而利用Excel的预览打印功能进行报表打印。

这就需要我们在VFP中直接来控制Excel。

下面就在开发VFP 应用项目时对Excel的控制作一下介绍:1.创建Excel对象oExcel=CREA TEOBJECT("Excel.application")2.添加新工作簿oExcel.Workbooks.add3.设置第3个工作表为激活工作表oExcel.Worksheets("sheet3").Activate4.打开指定工作簿oExcel.Workbooks.Open("c:\temp\ll.xls")5.显示Excel窗口oExcel.visible=.t.6.更改Excel标题栏oExcel.Caption="VFP应用程序调用Microsoft Excel" 7.给单元格赋值oExcel.cells(1,4).value=XM(XM为数据库字段名) 8.设置指定列的宽度(单位:字符个数)oExcel.ActiveSheet.Columns(1).ColumnWidth=5 9.设置指定行的高度(单位:磅)oExcel.ActiveSheet.Rows(1).RowHeight=1(设定行高为1磅,1磅=0.035厘米)oExcel.ActiveSheet.Rows("50:100").RowHeight=1 &&设置第50行至100行的高度10.在第18行之前插入分页符oExcel.Worksheets("Sheet1").Rows(18).PageBreak=1 11.在第4列之前删除分页符oExcel.ActiveSheet.Columns(4).PageBreak=012.指定边框线宽度(Borders参数如下)ole.ActiveSheet.Range("b3:d3").Borders(2).Weight=3 13.设置四个边框线条的类型oExcel.ActiveSheet.Range("b3:d3").Borders(2).LineSty le=1(其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线)14.设置页眉oExcel.ActiveSheet.PageSetup.CenterHeader="报表1" 14.设置页眉(字体大小)oExcel.ActiveSheet.PageSetup.CenterHeader="&50报表1" &&'&'后面的50可以自定义,表示字体的大小15.设置页脚oExcel.ActiveSheet.PageSetup.CenterFooter="第&P页"15.设置页脚(字体大小)oExcel.ActiveSheet.PageSetup.CenterFooter="&28第&P页" &&'&'后面的28可以自定义,表示字体的大小16.设置页眉到顶端边距为2厘米oExcel.ActiveSheet.PageSetup.HeaderMargin=2/0.035 17.设置页脚到底边距为3厘米oExcel.ActiveSheet.PageSetup.FooterMargin=3/0.035 18.设置顶边距为2厘米oExcel.ActiveSheet.PageSetup.TopMargin=2/0.03519.设置底边距为4厘米oExcel.ActiveSheet.PageSetup.BottomMargin=4/0.035 20.设置左边距为2厘米oExcel.ActiveSheet.PageSetup.LeftMargin=2/0.03521.设置右边距为2厘米oExcel.ActiveSheet.PageSetup.RightMargin=2/0.035 22.设置页面水平居中oExcel.ActiveSheet.PageSetup.CenterHorizontally=.t.23.设置页面垂直居中oExcel.ActiveSheet.PageSetup.CenterV ertically=.t.24.设置页面纸张大小(1-窄行8 5 11 39-宽行14 11 9:A4)oExcel.ActiveSheet.PageSetup.PaperSize=125.打印单元格网线oExcel.ActiveSheet.PageSetup.PrintGridlines=.t.26.拷贝整个工作表edRange.Copy27.拷贝指定区域oExcel.ActiveSheet.Range("A1:E2").Copy28.粘贴oExcel.WorkSheet("Sheet2").Range("A1").PasteSpecial 29.在第2行之前插入一行oExcel.ActiveSheet.Rows(2).Insert30.在第2列之前插入一列oExcel.ActiveSheet.Columns(2).Insert31.设置字体oExcel.ActiveSheet.Cells(2,1)="黑体"32.设置字体大小oExcel.ActiveSheet.Cells(1,1).Font.Size=2533.设置字体为斜体oExcel.ActiveSheet.Cells(1,1).Font.Italic=.t.134.设置整列字体为粗体oExcel.ActiveSheet.Columns(1).Font.Bold=.t.35.清除单元格公式oExcel.ActiveSheet.Cells(1,4).ClearContents36.打印预览工作表oExcel.ActiveSheet.PrintPreview37.打印输出工作表oExcel.ActiveSheet.PrintOut38.mandBars(1).Controls(1).accChild(18).Exe cute &&打印(菜单序号18为Excel2003的‘打印’项)&&不同版本Excel的菜单序号可以通过以下程序取得*(需要在VFP7.0以上运行)oXls=GETOBJECT("","excel.sheet")XlApp=oXLS.APPLICA TIONXlSheet=XlApp.ActiveSheetbars=mandBars.COUNTSTR=''FOR i=1 TO barsSTR=STR+CHR(13)+ALLTRIM(STR(i))+'、'+mandBars(i).accName+'(NAME:'+xlapp.C ommandBars(i).NAME+'INDEX:'+ALLTRIM(STR(mandBars(i).IND EX))+')'bars2=mandbars(i).accChildCountFOR j=1 TO bars2TRYobj=mandbars(i).CONTROLS(j)STR=STR+CHR(13)+''+ALLTRIM(STR(j))+'、'+mandbars(i).CONTROLS(j).accname+'(ID: '+ALLTRIM(STR(mandBars(i).CONTROL S(j).ID))+')'FOR k=1 TO obj.accChildCountTRYIF NOT EMPTY(obj.CONTROLS(k).accname )STR=STR+CHR(13)+''+ALLTRIM(STR(k))+'、'+obj.CONTROLS(k).accName+' (ID:'+ ALLTRIM(STR(obj.CONTROLS(k).ID))+')'ENDIFCA TCHEXITENDTRYENDFORCA TCHEXITENDTRYENDFORW AIT WINDOWS ALLTRIM(STR(i))+' / '+ALLTRIM(STR(bars))+''+STR(i/bars*100,10,2)+'%' NOW AITENDFORSA VE TO XLS.txt ALL LIKE STRMODIFY COMMAND XLS.txtRETURN39.工作表另存为oExcel.ActiveWorkbook.SaveAs("c:\temp\22.xls")检测当前目录是否有同名的EXCEL表,如果有先删除,再另存IF !FILE(SYS(5) + CURDIR() + "result.xls")oExcel.ActiveWorkbook.SaveAs(SYS(5) + CURDIR() + "result.xls")ELSElcFileName = loExcel.GetSaveAsFilename("result", "Excel (*.xls), *.xls")IF !EMPTY(lcFileName)IF FILE(lcFileName)DELETE FILE (lcFileName)ENDIFoExcel.ActiveWorkbook.SaveAs(lcFileName)ENDIFENDIF40.放弃存盘&& 避免出现保存对话框oExcel.ActiveWorkbook.saved=.t.41.存盘oExcel.ActiveWorkbook.save42.关闭工作簿oExcel.Workbooks.close43.退出ExceloExcel.quitRELEASE oExcel &&只有释放对象变量, EXCEL进程才会完全关闭44.合并单元格oExcel.ActiveSheet.Range("A4:B5").MergeCells=.t.45.下列设置大家自己理解With crfole.ActiveSheet.PageSetup.LeftHeader = chr(13)+"左页眉"2.CenterHeader = "中页眉".RightHeader = "右页眉".LeftFooter = "左页脚".CenterFooter = "中页脚".RightFooter = "右页脚".orientation=1 &&1竖排,2横排EndWithWith crfole.Range("A4:C4").MergeCells = .t..WrapText =.f..Orientation = 0.AddIndent =.f..ShrinkToFit = .f.EndWith46.文本对齐oExcel.range("A4:c4").HorizontalAlignment =1 &&水平(1-默认、2-靠左、3-居中、4-靠右、5-填充、6=两端对齐、7=跨列居中、8=分散对齐)oExcel.range("A4:c4").V erticalAlignment =2 &&垂直(1=靠上、2=居中、3=靠下、4=两端对齐、5=分散对齐)47.拷贝整个工作表(含格式)oExcel.activesheet.cells.copy &&拷贝oExcel.sheets(1).select &&选择第一工作表oExcel.ActiveSheet.Paste &&粘贴oExcel.ActiveSheet.Cells(3,4).value && ActiveSheet 为当前的Sheet工作薄名字,Cells(3,4).value 为第3行第4列的值以上控制调用语句在中文VFP5.0企业版下运行通过,运行环境为Excel 97及中文Windows 9848. 显示某个单元格的批注内容oExcel=CREA TEOBJECT("Excel.application") oExcel.Workbooks.OPEN("d:\TEST\testa.xls") oExcel.VISIBLE=.T.?oExcel.Range("B5").Comment.Text &&显示B5单元格的批注内容oExcel.Workbooks.CLOSEoExcel.QUITRELEASE oExcel49.oExcel.ActiveSheet.PageSetup.PrintTitleRows="$1: $1" &&每页都打印行标头(每页顶部出现的单元格的行)50.保护工作表:oExcel.ActiveSheet.PROTECT('密码',.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.)51.保护工作薄oExcel.ActiveWorkbook.PROTECT('密码',.T.,.T.)第一个.T.:保护工作簿结构第二个.T.:保护工作簿窗口52.设置允许用户编辑区域oExcel.ActiveSheet.Protection.AllowEditRanges.Add("区域3",oExcel.ActiveSheet.Range("A2:D5"))53.如果不想在宏运行时被无穷无尽的提示和警告消息所困扰,就将本属性设置为.F.oExcel.DisplayAlerts = .F.如果不想在宏运行时被无穷无尽的提示和警告消息所困扰,就将本属性设置为False;这样每次出现需用户应答的消息时,Microsoft Excel 将选择默认应答。

如何在vfp中调用excel实现图、表的制作(之二)

如何在vfp中调用excel实现图、表的制作(之二)

如何在vfp中调用excel实现图、表的制作(之二)言归正传。

接下来谈谈vfp调用excel生成统计图形的问题。

初学者可能以为这会是件很难的事情,其实还是很简单的,不必担心。

你最好用一点儿数据自己先在excel中试试如何生成一个统计图:打开Excel输入一组数据,例如从A1-A5,从上往下输入100,200,150,223,152这五个数据,然后用鼠标点击A1不放拖至A5,这样就把A1-A5选中了。

接着点击’图表向导’快捷键,在’图表类型’中选择’柱形图’,’子图表类型’就选择第一个,按’下一步’,在下一窗口中的’系列产生在:’选择’列’,因为我们的数据是从上往下按列摆放的。

接着按’下一步’,进入新的窗口,在’图表标题’栏输入:各生产车间产量柱形图;在分类(X)轴栏输入:车间;在’数值(Y)轴’输入:产量。

点击’下一步’,在’图表位置’窗口选中’将图表作为其中的对象插入’,点击’完成’按钮即可看见生成的柱形图形。

我们从vfp调用excel生成图表的角度来简单了解一下excel中的一些基本概念:一.对象层次:(由高到低)Application对象:它在excel对象结构中处于顶层。

形象地说,双击Excel图表就相当于创建了一个Application对象。

↓Workbooks对象:即工作簿对象(集),启动Excel后点击’新建’或’打开’快捷键就相当于创建或打开了一个Workbook。

↓Worksheets对象:即工作表(集)。

启动Excel后工作表集会自动默认含有sheet1、sheet2和sheet3这三个工作表。

Charts对象:图表(集),与Worksheets对象同级↓Cells对象:表格(集),即我们看到的一个个格子。

Range对象:是格子的一个范围,如上面的A1-A5,与Cells对象同级二.VBA(Visual Basic Application):它是一种面向对象的程序语言,内嵌于Excel,Excel的各项功能都可以直接使用VBA进行操作。

在 VFP 中控件 Excel 的小小经验集

在 VFP 中控件 Excel 的小小经验集
.HorizontalAlignment = 3
&&设置3、4行为水平对齐
.VerticalAlignment = 2
&&垂直居中
.NumberFormatLocal = "@"
&&设置3、4行为字符型内容
endwith
ef.Range("A3:A4").Select
ef.Selection.Merge
下列程序均在VFP5.0与EXCEL97中调试通过。因篇幅所限,程序中的错误处理部分略去。
一、EXECL驱动VFP
EXECL内置的VBA语言(Visual Basic For Application)为EXECL功能的扩展提供了便利的手段,用户可使用该语言直接驱动VFP完成数据检索等功能。
程序首先生成一个VFP对象,然后用VFP的DoCmd方法执行VFP摸索命令串,其摸索结果再借助于VFP的DateToClip方法拷贝至剪切板,最后VBA将其粘贴至工作表的正确位置。
Key Words: VFP、EXCEL、OLE、DDE、Cross-Programming
VFP(Visual Foxpro)是一种关系型数据库管理系统,由于其强大的数据处理能力及良好的兼容性,使其成为数据库应用程序开发人员的强有力工具,而EXECL则是一种优秀的电子表格处理软件,在兼容性、操作界面、公式运算、图表等方面有着独到的优势。上述两种软件在各自的应用领域均得到广泛的应用,同时上述两种软件还具有良好的交互编程能力,为两者相辅相成、取长补短奠定了良好的基础。
ef.Selection.Merge
ef.Range("N3").value='录入量'

VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox)一.列表框(listbox):主要用于选择一组指定的数据,用户从列表中选取选项,然后执行所需的操作.二.列表框常用属性:见下表注1(rowsourcetype属性可指定的值):0-无,运行时使用列表框的确良additem和addlistitem方法加入1-值,将列表框的内容在设计时直接写在该属性中2-表别名:由columncount确定表中选择的字段.当用户选择列表框时,记录指针将自动移到该记录上3-sql语句:见sql部分,由执行的结果产生.4-查询文件名:见查询部分,由查询结果产生5-数组名6-字段名表:可用表别名作为字段前缀.当用户选择列表项时,记录指针将自动移到该记录上7-文件名描述框架,可包含"*"和"?"来描述在列表框中显示的文件名8-结构9-弹出式菜单,提供向后兼容.二.列表框常用的方法:见下表方法作用additem 增加列表项removeitem 移去列表项clear 移去所有列表项requery 当rowsourcetype为3和4时,根据rowsource中的最新数据重新刷新列表项三.列表框常用事件:列表框的常用事件为click(单击)事件和dbclick(双击)事件.四.例:列表框练习1.新建表单,添加一个文本框text1,三个命令按钮command1~command3,三个命令按钮的caption属性依次设为"加入","移出"和"全部移出",一个列表框list1.界面如图252.设置属性:将表单的caption属性设为"列表框练习",autocenter属性设为.T.;将列表框list1的moverbars属性设为.T.,multiselect属性设为.T.3.编写代码:●"加入"命令按钮command1的click事件:qm=thisform.text1.valueIF !empty(qm)no=.t.FOR i=1 to thisform.list1.listcountIF thisform.list1.list(i)=qm &&如果文本框中输入的内容和列表框中已存在的内容相同,则不添加no=.f.ENDIFNEXT iIF nothisform.list1.additem(qm)thisform.refreshENDIFENDIF●"移出"命令按钮command2的click事件:IF thisform.list1.listindex>0thisform.list1.removeitem(thisform.list1.listindex)ENDIF●"全部移出"按钮command3的click事件:thisform.list1.clear●列表框list1的init事件:thisform.list1.additem("杨过")thisform.list1.additem("小龙女")thisform.list1.additem("东方不败")●列表框list1的dbclick事件:mand2.click() &&调用command2("移出"按钮)的click事件代码说明:运行后,列表框中自动添加了3条记录,如图26,这是在表单的init代码中添加的;在文本框中输入任意文本,如果和列表框中的内容不同,单击"加入"按钮,该内容会加入到列表框;否则不添加;在列表框中选中一条数据,单击"移出"按钮,该数据被删除;在列表框中直接双击某条数据,则的列表框的dbclick事件中调用"移出"按钮的click事件代码,将双击的数据删除。

vfp6表单设计实例

vfp6表单设计实例

vfp6表单设计实例VFP (Visual FoxPro) 是一种关系数据库管理系统,由微软公司开发。

表单(Form)是 VFP 中用于创建用户界面的重要工具。

以下是一个简单的 VFP 6 表单设计的实例:1. 创建表单首先,打开 VFP 6,选择 "File" -> "New" -> "Form"。

这将打开表单设计器。

2. 添加控件在表单设计器中,你可以从工具箱(Toolbox)中拖放各种控件,如标签(Label)、文本框(TextBox)、命令按钮(CommandButton)等。

例如,你可以添加一个标签(Label)和一个文本框(TextBox),用于用户输入数据。

3. 设置属性选中控件后,可以在属性窗口(Properties Window)中设置各种属性,如名称、位置、大小、字体等。

例如,你可以设置标签的 `Caption` 属性为 "姓名",设置文本框的 `Name` 属性为 "txtName"。

4. 编写事件代码在 VFP 中,你可以为控件的特定事件编写代码。

例如,你可以为命令按钮的 `Click` 事件编写代码,以便在用户点击按钮时执行某些操作。

在代码窗口中输入以下代码:```vfpDO SomeProcedure```其中 `SomeProcedure` 是你要执行的过程的名称。

5. 保存表单最后,保存表单。

选择 "File" -> "Save As",并输入表单的名称和位置。

以上是一个简单的 VFP 表单设计实例。

你可以根据需要添加更多的控件和事件代码,以创建更复杂的用户界面。

vfp表单中表格控件使用

vfp表单中表格控件使用

vfp表单中表格控件使用
在VFP(Visual FoxPro)表单中使用表格控件可以方便地显示和编辑数据。

以下是在VFP表单中使用表格控件的一般步骤:
1. 打开VFP并创建新表单。

2. 在表单设计器中选择表格控件工具。

3. 在表单上绘制表格控件的大小和位置。

4. 双击表格控件,进入编辑模式。

5. 选择要显示的数据源(如数据库表或数组等)。

6. 根据需求调整表格的列数、列宽和列标题等属性。

7. 设置表格控件的其他属性,如是否可编辑、是否显示行号等。

8. 编写相关的VFP代码来处理表格控件的事件,例如在选择
行或编辑单元格时触发的事件。

9. 运行表单,查看和测试表格控件的功能。

在使用表格控件时,还可以通过编写代码来动态地添加、删除、更新和过滤表格中的数据,并对表格控件进行排序和分页等操作。

除了基本的显示和编辑数据外,VFP表格控件还可以支持更
复杂的功能,如合并单元格、显示图标或图像、设置条件格式等。

总之,使用表格控件可以方便地在VFP表单中展示和操作数据,提高用户界面的友好性和功能性。

Visual FoxPro 程序设计第10章 常用的表单控件

Visual FoxPro 程序设计第10章 常用的表单控件

③Visible属性 指定对象是可见还是隐藏。在表单设计器中, 默认值为T.,即对象是可见的;在程序代码中,默 认值为.F.,即对象是隐藏的。但是一个对象即使是 隐藏的,在代码中仍可以访问它。 ④Caption属性 该属性决定在命令按钮上显示的标题文本。
【例10.2】利用命令按钮以实现显示状态的切 换(如下图所示)。
例10.1
10.2 命令按钮控件(Command)
命令按钮一般是用于启动某一动作的事件 (如关闭表单、移动记录等)。这些事件的操作 代码通常是放置在命令按钮的Click事件中。当用 户需要完成某项特定的操作时,可单击此命令按 钮。
常用属性: ①Default属性和Cancel属性 Default属性值为.T.的命令按钮称为“确认” 按钮。命令按钮的Default属性的默认值为.F.。一 个表单内只能有一个“确认”按钮,当用户将某 个命令按钮设置为“确认”按钮时,先前存在的 “确认”按钮将自动变为“非确认”按钮。 “确认”按钮的行为要受到KEYCOMP设置 (DOS或WINDOWS)的影响。在“确认”按钮 所在的表单激活的情况下,“确认”按钮的行为 设置值 效果 如下表所示。
10.1 标签控件(Label)
标签控件:它是一个显示文本图形的控件, 在设计时可以直接修改其中的文本,标签具有自 己的一套属性、事件和方法,能够响应绝大多数 鼠标事件,可以在运行时动态地改变标签文本。 可以使用TabIndex属性为标签指定一个Tab次序, 但标签并不能获得焦点,而是将焦点传递给Tab 键次序中紧跟着标签的下一个控件。
DOS
WINDOWS
按Ctrl+Enter,选择“确认”按钮、执行Click事件代码
当焦点不在命令按钮上时,按Enter,选择“确认”按钮、 执行Click事件代码

《VisualFoxPro9.0项目开发案例教程》第02章

《VisualFoxPro9.0项目开发案例教程》第02章

报表生成
1
报表设计器
VisualFoxPro9.0提供了强大的报表设
查询与过滤
2
计器,支持多种样式和布局类型、不 同的数据源和多个页类型等。
报表生成的核心在于数据的准确性,
用户可以基于SQL语句进行数据筛选
和排序,进而生成相应的报表。
Байду номын сангаас
3
导出与打印
报表生成后,用户可以选择将其导出 为不同的格式,如Word、Excel和 PDF等。也可以直接打印到打印机或 PDF文件中。
语法基础
1
变量类型
VisualFoxPro9.0支持不同的变量类
运算符
2
型,包括字符型、数值型、日期型和 逻辑型等。每种类型对应的取值范围
VisualFoxPro9.0提供了丰富的运算
和运算规则都不同。
符支持,例如算数运算符、关系运算
符、逻辑运算符和位运算符等。还可
以通过自定义函数扩展运算。
3
控制语句
常见问题解答
常见错误解决
VisualFoxPro9.0常见错误解决是解决常见的维 护问题,解决后将为您的工作效率提升一个层 次。
速度优化
VisualFoxPro9.0运行速度对于处理大数据的应 用有很大的影响,快速运行速度可以节约大量 的时间,提高开发效率。
实际案例
企业员工管理系统
该系统基于VisualFoxPro9.0教程,结合企业管理流程需要进行开发,收到了广泛应用。
未来发展前景
VisualFoxPro9.0以面向对象和精细化的开发思 路,赢得了越来越多的用户的青睐和认可。在 未来,随着应用范围的不断扩大, VisualFoxPro9.0也会越来越受到关注和创新。

13 Visual Foxpro中的表单-常用控件的使用

13 Visual Foxpro中的表单-常用控件的使用
复选框有三种不同的外观:设置属性Style 和Picture。 复选框常用的属性: ControlSource Value Caption 复选框的常用事件: Click
8.5.4 复选框与选项按钮组
选项按钮组
选项按钮组又叫单选按钮组,可以包含多 个按钮,任何时刻只能有一个按钮被选中。 单击选项按钮组的按钮,选项按钮组的 Value属性会获得一个被点击的按钮在该组中 的序号值。根据value的值可以判断出单击的是 哪一个按钮,然后执行该选项对应的操作。 value的值默认为1。
8.5.5 命令按钮组
命令按钮组
命令按钮组可以包含多个按钮,单击命令 按钮组的按钮,命令按钮组的Value属性会获 得一个被点击的按钮在该组中的序号值。根据 value的值可以判断出单击的是哪一个按钮,然 后执行该按钮对应的操作。value的值默认为1
8.5.5 命令按辑状态。 也可以运用生成器来编辑选项按钮组。
8.5.5 命令按钮组
命令按钮组的常用属性: ButtonCount Value ControlSource 命令按钮组的常用事件: Click
8.5.6 计时器
计时器:
计时器控件在运行时不可见,常用来做一 些与时间有关的后台处理。 计时器能在设定的时间间隔到达时自动执 行其Timer事件代码。对Timer事件进行编程让 它实现相应的功能。
1由数据环境创建表格由数据环境创建表格将数据环境中的数据表拖动到表单中会将数据环境中的数据表拖动到表单中会自动生成一个表格并且与数据表绑定
8.5.7 表格
表格控件:
表格控件是用来在表单或页框中显示或修 改数据表中的记录的。表格由若干列组成,每 一列由列标题和列控件组成。 列标题默认显示数据表的字段名,可以编 辑,列控件默认为文本框,显示字段值。

VisualFoxPro表单设计

VisualFoxPro表单设计

第8 章表单设计一、表单的概念表单(Form)是应用程序的用户界面,也是我们进行程序设计的基础。

各种图形、图像、数据等都是通过表单或表单中的对象显示出来,因此,表单是具有各种属性、控件、事件和方法程序的容器对象。

表单在OOP中提供数据输入、修改或输出的界面。

Windows中的各种窗口与对话框均为表单的不同表现形式。

二、表单创建方法:1.菜单方式:“项目管理器”或“文件”→“新建”→“表单”2.命令方式:CREATE FORM或MODIFY FORM事际上可运用三种方式:●●表单向导:能引用用户选定表来产生实用的表维护窗口,窗口中含有所选取的字段,还包含供用户操作的各种按钮,具有翻页、编辑、查找、打印等功能。

●●快速表单●●表单设计器三、表单设计器:1.表单设计器的特点:(1)不但能创建表单,而且可修改表单。

(2)操作界面可视化,用户可利用多种工具栏、敏感菜单(这里指VFP菜单随表单设计器的打开而增加与改变的部分)和快捷菜单在表单上创建与修改对象。

(3)表单设计面向对象。

2.表单设计器打开后,有下列表单设计要素能供用户使用:(1)表单设计器窗口及其表单窗口:表单设计器窗口中的Form1窗口即表单对象,称为表单窗口。

多数设计工作将在表单窗口中进行,包括往窗口内添加对象,并对各种对象进行操作与编码。

(2)属性窗口:能显示当前对象的属性、事件和方法程序,并允许用户更改属性,定义事件代码和修改方法程序。

(3)代码窗口:用于编写事件过程和方法程序代码。

(4)表单控件工具栏:用于在表单上创建控件。

(5)调色板工具栏:用于指定一个控件的前景色和背景色。

(6)布局工具栏:用于对齐、放置控件以及调整控件大小。

(7)数据环境设计器窗口:用于提供表的数据环境。

(8)敏感菜单:表单设计器打开后,系统菜单将自动增加一个“表单”菜单;“显示”菜单、“窗口”菜单及“格式”菜单都将有所改变。

(9)随机应变的快捷菜单。

四、常用表单事件1.Load事件:表单被装入内存时发生2.Init事件:表单被初始化时发生3.Activate事件:表单被激活时发生4.Destory事件:表单被释放时发生5.Unload事件:表单被关闭时发生6.Resize事件:当用户或程序改变表单大小时发生五、常用表单方法程序1.Hide方法:隐藏表单2.Show方法:显示表单3.Release方法:释放表单4.Refresh方法:刷新表单六、对象的引用1.绝对引用通过提供对象的完整容器层次来引用对象。

巧用VFP的Grid表格控件

巧用VFP的Grid表格控件

巧用VFP的Grid表格控件论文导读:很多VFP初学者采取使用BROWSE命令或在文件夹下双击数据表文件的方法对数据表进行浏览、查询和修改数据,但BROWSE命令操作界面呆板、不能脱离VFP的主窗口执行、容易出错(比如操作时不小心按了空格键,光标所在处的内容就被空格代替了)。

设置表格的数据源类型recordsourcetype属性为1(别名),数据源recordsource属性为xsb,列数columncount属性为xsb表的字段数16,删除标记deletemark属性为.f.(不显示删除标记),只读属性readonly为.t.(不允许用户在表格中修改数据),并将列标题用汉字描述(即表1中备注内容),如column1.header1.caption值为“报到情况”等。

关键词:VFP,Grid控件,属性,设置技巧很多VFP初学者采取使用BROWSE命令或在文件夹下双击数据表文件的方法对数据表进行浏览、查询和修改数据,但BROWSE命令操作界面呆板、不能脱离VFP的主窗口执行、容易出错(比如操作时不小心按了空格键,光标所在处的内容就被空格代替了)。

Grid表格控件是VFP表单的常用控件之一,能够进行再次编程,不仅操作界面美观,而且方便灵活、效率高。

本文以新生报到管理为例,介绍几则Grid表格控件使用技巧。

设有学生表(xsb.dbf),表结构如表1所示,建立表单文件,主要包括以下控件:1个表格控件(Grid1)、1个文本框、3个命令按钮(查询、报到、退出)等。

发表论文。

1.设置表格基本属性设置表格的数据源类型recordsourcetype属性为1(别名),数据源recordsource属性为xsb,列数columncount属性为xsb表的字段数16,删除标记deletemark属性为.f.(不显示删除标记),只读属性readonly为.t.(不允许用户在表格中修改数据),并将列标题用汉字描述(即表1中备注内容),如column1.header1.caption值为“报到情况”等。

Visual FoxPro程序设计第17讲—常用表单控件(二)概要

Visual FoxPro程序设计第17讲—常用表单控件(二)概要
当把“命令按钮组”控件用在数据表中 时,应 根据记录指针变化情况随时检测控制某个按钮的功能 是否可用。(当不可用时,应令其Enabled属性为假)
12.2.14 页框控件(Pageframe)
“页框”控件 是用来把多个不同格式的容器类对 象封装在一个页框中。或者说,它是使一个页框中可以 有多页对象,而在每页中又可以包含若干控件。
12.2.12 表格控件(Grid)
“表格”控件在一对多的表关系中经常使用。 在实际应用中,通常用“文本框”控件显示父表 中的记录信息,用“表格”控件显示子表中对应的多 个记录信息。
12.2.13 命令按钮组控件Commandgroup
“命令按钮组”控件 是把一些命 主要属性: 、Left、 令按钮组合在一起,作为一个控件管理。Top Height、Width、 每一个命令按钮有各自的属性、事件和 Buttoncount 按钮个数、 每个按钮的Caption 方法,使用时仍需独立操作某一个指定 主要事件: 的命令按钮。 每个按钮都有一个Click
小结:
4. “命令按钮组”控件主要属性: Buttoncount 按钮个数 每个按钮的Caption 主要事件:每个按钮都有一个Click事件 5. “页框”控件的主要属性: Activepage——页框活动的页号。 Pagecount——页框包含的页数。
作业:上机调试例12.11 至12.17
Visual FoxPro程序设计
第17讲—常用表单件 是用于美化窗体、框架或图 片框的显示效果,用形状控件可绘画矩形、正方 形、椭圆形、圆形、圆角矩形或圆角正方形等图 形。 “形状”控件的主要属性有: (1)top (2)left (3)Height (4)Width (5)Curvature 形状的角的曲率 (6)Backstyle 形状背景是否透明 (7)Backcolor

VF表单控件操作

VF表单控件操作

表单控件操作补充1、复选框和选项组效果如下:步骤如下:(1)新建一个表单,Autocenter为.T.(2)向表单中添加一个标签Label1、一个选项按钮组OptionGroup1及两个复选框Check1、Check2,如1-1所示:(3)右击选项按钮组件,在弹出的快捷菜单中选择“生成器”,修改按键数为3,并分别将Option1、Option2、Option3的Caption设为红绿蓝。

(4)将Check1的Caption属性设为“粗体”、Check2的Caption属性设为“斜体”,Label 的Caption属性设为“欢迎使用学生管理系统”,并将Label的Autosize属性设为.T.(5)编写代码分析:标签的Fontbold和Fontitalic属性,即“加粗”和“倾斜”属性,这两个属性都有两个值--.T. 和.F.;而复选框的Value属性也有.T. 和.F.两个值,选中时为.T.,否则为.F.。

本例巧妙地利用这个特点。

A.Check1的Click事件bel1.fontbold=thisform.check1.valueB. B. Check2的Click事件bel1.fontitalic=thisform.check2.valueC.单选按钮Option1的Click事件bel1.forecolor=RGB(255,0,0)单选按钮Option2的Click事件bel1.forecolor=RGB(0,255,0)单选按钮Option3的Click事件bel1.forecolor=RGB(0,0,255)(6)保存并运行2、列表框和命令组效果如下步骤如下:(1)新建一个表单,将表单的Caption属性设为“列表框和命令组”,Autocenter为.T.;将列表框List1的MoverBars属性设为.T.(2)向表单中添加一个文本框Text1、一个命令按钮组CommandGroup1,两个命令按钮的Caption属性依次为“加入”、“移出”,一个列表框List1:(3)编写代码命令组中Command1(即加入按钮)的Click事件st=thisform.text1.valueif !empty(st)no=.t.for i=1 to thisform.list1.listcountif thisform.list1.list(i)=stno=.f.endifnext iif nothisform.list1.additem(st)thisform.refreshendifendif命令组中Command2(即移出按钮)的Click事件if thisform.list1.listindex>0thisform.list1.removeitem(thisform.list1.listindex)endif列表框 List1的Init事件thisform.list1.additem("你好")thisform.list1.additem("昆明")thisform.list1.additem("欢迎您")列表框 List1的DBclick事件mand2.click()(4)保存表单并运行3、表格和组合框效果如下:步骤:(1)新建一个表单,将其Caption属性设为“表格和组合框”,Autocenter为.T.;(2)向表单中添加两个标签控件,将它们的Caption属性分别设为“班级”和“性别”,然后在两个标签控件后分别添加两个组合框控件Combo1和Combo2,如下图所示(3)右击表单空白处,在弹出的快捷菜单中选择“数据环境”命令,将表“Student.dbf”添加到表单的数据环境中,如下图所示:(4)向表单中添加一个表格控件,右击表格,在弹出的快捷菜单中选择“生成器”命令,可以启动“表格生成器”窗口,如下图所示:(5)选中组合框Combo1,在“属性”窗口中将其 RowSourceType属性改为“1—值”,在选中RowSource属性,在上方文本框中输入值:“95031,95033”,如下图所示(6)用同样的方法,将Combo2的RowSourceType属性改为“1—值”,在选中RowSource 属性,在上方文本框中输入值:“男,女”。

VF表单与控件设计举例

VF表单与控件设计举例

VF表单与控件设计例子1:用表单向导创建一个学生表单(表单中数据来自一个表)这个表单的功能是对学生信息浏览,添加,删除,查找,打印,编辑,退出。

一、创建(1)(2)(3)(4)①②(5)(6)(7)二、运行(1)①①②①②④③(2)①效果:例子2:用一对多表单向导创建一个学生-成绩表单,(表单中数据来自多个表)这个表单的功能是浏览,添加,删除,查找,打印,编辑,退出,浏览一个学生信息和他对应的选课信息。

一、创建(1)(2)(3)(4)①②(5)(6)①②(7)(8)(9)二、运行(1)①①②①②④③(2)①效果:例子3:用表设计器创建一个学生表单(表单中数据来自一个表)这个表单的功能是浏览和修改学生表中的记录。

一、创建(1)(2)说明:(3)单击右键,在弹出菜单中点击数据环境标签 编辑框 命令按钮组复选框 列表框 表格 计时器 ActiveX 控件线条容器 超级链接 生成器锁定选定对象 文本框 命令按钮 命令按钮组 选项按钮组 微调控件 图像页框ActiveX 绑定控件 形状 分隔符 按钮锁定查看类 表单上所有对象名称列表属性名属性值属性值编辑框(4)添加表进入数据环境②③①(5)将表或其中字段直接拖到表单上,字段生成(标签+文本框),表生成(表格)表格拖动字段拖动(5-1)全部拖动之后,选中表格,单击右键,在弹出菜单中点击编辑,表格对象处于被绿框选定的编辑状态,调整表格列宽。

(6)添加命令按钮控件和命令按钮组添加命令按钮控件分3步:①②1、在表单上画出命令按钮①在表单控件工具栏上选择命令按钮控件②在表单合适的位置拖动鼠标画出一个命令按钮2、在属性窗口中对命令按钮的属性进行设置。

选中某个属性项,在上面的编辑框内输入属性值3、Command1的Click事件代码编写如下(双击命令按钮对象,弹出代码框,注意左边的对象列表框要选Command1;右边的事件过程列表框要选Click,下面是代码编辑)添加命令按钮组1、在表单上画出命令按钮组①在表单控件工具栏上选择命令按钮组控件②在表单合适的位置拖动鼠标画出一个命令按钮组③选中命令按钮组对象,单击右键,在弹出菜单中选生成器④在生成器中设置按钮组中按钮的个数(微调按钮)和⑤排列和⑥名称①②③④⑤⑥2、在属性窗口中对命令按钮的属性进行设置。

VisualFoxpro表格的使用方法与技巧

VisualFoxpro表格的使用方法与技巧

VisualFoxpro表格的使用方法与技巧一、概述网格(Grid),是Visual Foxpro 3.0下一个功能极为强大的容器控件。

从外观上看,它非常类似于我们熟悉的Browse窗口,但实际上它提供了比Browse窗口更为丰富的控制方式。

如作为一个容器,它的每一列均可容纳不同的控件,这样就提供了比Browse更方便的输入方式;又如它能设置列对象的动态字体和颜色,这样就使得每一行、每一列甚至每一单元格都可定制自己的显示风格,从而提供了比Browse更丰富的显示效果。

笔者在对网格控件的使用过程中觉得,如果恰当地运用网格的属性以及网格控件提供的事件与方法,可以完成一些看起来非常难以实现的编辑功能。

下面从一个具体例子出发,讨论VFP下网格的使用方法与技巧。

二、输入焦点的自动转移为叙述方便起见,首先利用VFP的项目管理器建立一个测试项目,然后以该项目为原型分析本文中关于网格使用技巧方面的例子。

我们将项目命名为T est,然后在该项目下新建一个数据库,也命名为Test,再在数据库T est建立一个表Test1,该表有两个字段,1)Name:字符型,宽度为10; 2)Value:数值型,宽度为10,小数位数为1。

下面先建立Test1表的输入表单T est11,并在表单的"数据环境"中将表Test1添加进去。

然后在表单上放置一网格,并将网格的数据源(RecordSource属性)设为Test1,同时设置网格为两列,分别绑定Test1表的Name和Value字段。

这样我们就可以开始讨论具体问题及其解决方案了。

1. 问题的提出假定T est1表的Name字段的内容为在一般情况下固定不变的一些数据(这种情况还是比较常见的,如Name字段表示项目指标,Value字段表示对应该指标的数值,Name字段的数据一旦一次输入后,一般情况下是不用改变的),而需要改变的是对应Name的Value值,为使在网格输入时Name字段的值不被用户修改,可将网格的第一列Column1的Enabled属性设为.F.,但这样做以后,问题就出现了。

Visual Foxpro中表格控件设计技巧二例

Visual Foxpro中表格控件设计技巧二例

Visual Foxpro中表格控件设计技巧二例
许晓红
【期刊名称】《智能计算机与应用》
【年(卷),期】2007(000)006
【摘要】通过实例介绍了在表格控件中鼠标单击列标头对数据进行排序和浏览数据时实现整条记录突出显示的技巧.
【总页数】2页(P48-49)
【作者】许晓红
【作者单位】四川文理学院计算机科学系,四川,达洲,635000
【正文语种】中文
【中图分类】TP317
【相关文献】
1.Visual FoxPro表单的剖析与应用—为Visual FoxPro增加表单自动设计功能[J], 李立春
2.Visual Foxpro结构化程序设计教学方法和技巧探讨 [J], 朱强
3.Visual FoxPro表格控件在传统中医诊断系统中的应用 [J], 黄晓巧
4.基于VisualFoxpro软件设计中技术技巧的研究与实践 [J], 王海燕;李政;石景峰
5.基于Visual FoxPro程序设计中简单图形的编程技巧 [J], 张世军
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

修改稿收到日期:2007- 05- 30
· 48 ·
2007 年 12 月
电脑学习
第6期
基于 X3D 与 Authorware 虚拟现实多媒体课件的实现
刘林涛*
田慧珍* *
摘 要 : 阐 述 了 如 何 通 过 X3D 技 术 创 建 虚 拟 三 维 场 景 并 将 其 应 用 到 Authorware 制 作 的 多 媒 体 课 件 中 , 以 达 到 在 多 媒 体 课 件中, 实现三维仿真及漫游的目的。
Two Cases of Design Skills about For m Contr ols in Visual Foxpr o
Xu Xiaohong
Abstr act: Through the example,it introduces how to realize the entire strip record prominent demonstration while mouse sin- gle- clicking a row headers.
表格其它列的列标头 Header1 对象的 MouseUp 事件代 码依此设置;(5)保存并执行表单,就能得到需要的效果。
2 实现整条记录突出显示
Hale Waihona Puke 设计方法:首先依照上面方法创建一个包含表格控件 的表单,在表格控件的 afterRowColChange 事件中写入代码: LPARAMETERS nColIndex this.setall(″dynamicbackcolor″,″iif(this.activerow=recno(),rgb(30, 60,150),rgb(255,255,255))″,″column″) && rgb(30,60,150) 为蓝色背景
Keywor d: Visual Foxpro Form Controls Design Skills
在 Visual FoxPro 中,表格控件能以二维表格的形式显 示和编辑数据,是一个常用的容器控件。在数据库应用系统 中,表格控件常用于显示和编辑数据库表、视图和查询结 果。现介绍二例在表格控件设计中总结的实用技巧。
参考文献 [1] 张涌逸,康祥顺,李辉. 白领就业指南: Visual FoxPro8.0 设计师之路. 北京:电子工业出版社,2006. [2] 李雁翎. Visual FoxPro 应用基础与面向对象程序设计 教程. 北京:高等教育出版社,2002.
* 刘林涛 苏州大学计算机科学学院在读硕士(徐州师范大学计算机学院讲师),研究方向:虚拟现实技术和多媒体技术。 * * 田慧珍 徐州师范大学现代技术教育中心讲师(江苏,徐州 221001),研究方向网络与多媒体技术。 修改稿收到日期:2007- 05- 27
1 构建虚拟场景
建立三维实体模型是实现虚拟仿真的基础,模型的制 作 可 以 采 用 现 有 的 成 熟 的 三 维 设 计 软 件 , 如 VC ++ 、 3DMAX、VRML/X3D、Cult3D、Java 等。从多媒体课件制作的 角 度 ,需 要 选 择 成 熟 、易 学 、兼 容 性 好 、具 有 一 定 交 互 功 能 的软件,建议采用 VRML/X3D 和 3DMAX。VRML/X3D 通过 球、圆锥、圆柱、长方体等基本图元建立简单几何造型。对 于 复 杂 的 三 维 实 体 ,VRML/X3D 提 供 了 IndexedFaceSet 等 节 点 ,它 是 用 多 边 形 面 片 来 描 述 复 杂 形 体 的 ,理 论 上 任 何
3结束语 Visual FoxPro 关系数据库管理系统是开发数据库应用 程序的强劲、快速工具,一直是小型数据库开发领域中的佼 佼者。作为一门编程工具,完全可以实现任何能够想到的东 西,也就是″不怕做不到,只怕想不到″。
ColChange 事件代码如下: LPARAMETERS nColIndex If this.activerow = recno() this.setall(″dynamicbackcolor″,″iif(this.activerow=recno(),rgb(30, 60,150),rgb(255,255,255))″,″column″) else
解决方案:只需对数据表″借阅.dbf″建立一个不包括逻 辑删除记录的关联子表 temp_table,当记录指针在父表″借 阅.dbf″中移动时,子表 temp_table 的记录指针也移到和父表 的借书证号相同的记录上。当逻辑删除记录造成表格控件
* 许晓红 四川文理学院计算机科学系副教授(四川、达洲 635000)。
1 通过表格列标头对数据进行排序
在表单中用表格控件显示数据信息时,当使用者在记 录之间移动时,只有获得焦点的记录的某一个字段以不同 于表格控件背景的颜色显示,很不醒目。希望当数据记录移 动时,整条记录均用同一种颜色突出显示,即用颜色动态变 化显示相对光标所在记录的位置,如图 1 所示。
在 Visual FoxPro 中,利用表格控件显示某个表的信息 时,可以实现使用鼠标单击列标头对数据进行排序。
三 维 形 体 都 可 以 用 IndexedFaceSet 节 点 精 确 或 近 似 地 构 造,但对于复杂形体用手工编写几乎不可能。简单造型可 以用 VRML 技术提供的造型节点直接造型,其数据量较 小,而较复杂的造型可以在 AutoCAD 等造型软件中造型后 再导入 3DMAX 软件中,3DSMAX 是三角形画面表述模型 外观,直接导入会导致最终的 VRML 文件过大,因此在导 入模型后应分析其面片分布并用简单的三维基本造型进 行局部优化。对具有不规则外形的模型尽量用放样方式和 模型拼接方式来表述而避免用布尔运算制作。
select 借 书 证 号 from 借 阅 where .not. deleted ()into cursor temp_table select temp_table index on 借书证号 tag jszh set relation to 借书证号 into temp_table in 借阅 sele 借阅 this.setall(″dynamicbackcolor″,″iif(this.activerow=recno(temp_table), rgb(30,60,150),rgb(255,255,255))″,″column″) endif thisform.refresh
问题:在使用的过程中,如果设置了 set delete on 环境 参数,则当逻辑删除记录后,动态背景的颜色显示就会出现 混乱,如图 2 所示,获得焦点的记录是第 8 条,而用蓝色背 景突出显示的记录是第 6 条。造成这种现象的原因,是由于 逻辑删除记录,导致表格控件中光标所在的行 activerow() 不等于数据表中的记录号 recno()。
关 键 词 : X3D VRML97 ActiveX 控件 虚拟现实技术
中图分类号: TP393
文献标识码: B 文章编号: 1002- 2422( 2007) 06- 0049- 02
Implementation of Vir tual Reality Multimedia Cour sewar e Based on X3D&Author war e
2007 年 12 月
电脑学习
第6期
Visual Foxpro 中表格控件设计技巧二例
许晓红*
摘 要: 通过实例介绍了在表格控件中鼠标单击列标头对数据进行排序和浏览数据时实现整条记录突出显示的技巧。 关 键 词 : Visual Foxpro 表格控件 设计 技巧
中图分类号: TP317
文献标识码: B 文章编号: 1002- 2422( 2007) 06- 0048- 02
· 49 ·
中光标所在的行 activerow () 不等于数据表中的记录号 recno()时,由于子表中的记录是不包括逻辑删除记录的, 这就保证了子表中的当前记录号 recno('temp_table' )始终 等于表格控件中光标所在的行 activerow(),从而使该行动 态 背 景 颜 色 能 正 确 显 示 。 修 改 表 格 控 件 的 afterRow-
Liu Lintao Tian Huizhen
Abstr act: The paper expounds how to implement 3D virtual simulation and navigation in Authorware multi- media courseware. Keywor d: X3D VRML97 ActiveX Virtual Reality Technique
用鼠标单击表格的标头″借书证号″时,整个表格按″借 书证号″升序显示数据;当按下 CTRL 键的同时再用鼠标单 击表格的标头″借书证号″时,整个表格按″借书证号″降序显 示数据。这个表单的设计步骤如下:
(1)新 建 一 个 表 单 ,在 表 单 中 添 加 形 状 控 件 、标 签 控 件、按钮控件;(2)在表单中单击鼠标右键,然后选择″数据 环境″,在弹出的数据环境设计器中,添加借阅.dbf 数据表; (3) 在表单中添加一个数据表格对象,并将该对象的 RecordSourceType 设置为″1- 别名″,将 RecordSource 设置为″ 借阅″,将表格对象的 ColumnCount 设置为 4;(4)在表格第 一列的列标头 Header1 对象的 MouseUp 事件中写入代码: LPARAMETERS nButton, nShift, nXCoord, nYCoord if nShift=2 set order to 借书证号 descending else set order to 借书证号 ascending endif go top thisform.refresh
相关文档
最新文档