| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1288 人关注过本帖
标题:命令按钮组的常规代码是什么?
取消只看楼主 加入收藏
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
结帖率:91.53%
收藏
已结贴  问题点数:100 回复次数:10 
命令按钮组的常规代码是什么?
命令按钮组的常规代码是什么?

用向导,就只有  标签和文本框 的搭配  ,想弄个标签和组合框的   ,又弄不出向导那样的按钮组。。。

谁给来几个代码:

1、添加新记录的

2、编辑记录的

3、打印报表的

4、删除记录的

如下图
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 记录 标签 文本框 
2015-10-26 09:14
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 5楼 wcx_cc
具体的问题是这样的:

图中,有 文件头、上一条、下一条、文件尾,  添加,编辑,删除,打印等按钮

这是用向导生成的。

但向导生成的表单,只有左标签,右文本框,这种样式,而且,整个向导过程中,也只能选一个父表和一个子表

如下图的多表操作,向导就没有这功能了吧
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2015-10-27 00:42编辑过]


报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-26 23:41
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 7楼 不懂才问
整个程序,就是围着材料转。

主要的表1————材料流水
根据收到或派出材料的时间,生成账单号。但因为同一笔单子,可能收到几种材料或派出几种材料,所以,流水里还有自己的总流水号

主要的表2————收料明细
就是记录一个单子,是哪个供应单位给的材料,一单给了几项材料,谁接收的

主要的表3————用料明细
记录谁领走了材料,用途是什么做什么工程了

辅助表很多,像供应单位,就那么几家,材料分类,也就那么几种
————————————————————————————————————————————————————
为了减少冗余,这三个主要的表,最好不要合在一起
为了减少输入时的错误,也为了操作方便,像供应单位和材料分类,我想在表单上使用组合框去点选,而在三个主要表中记录的只是一个分类的编号
如下图
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-27 01:05
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 8楼 不懂才问
这样的数据库设计,冗余肯定是少了,但对编程技巧的要求就提高了

我设计的收料单,需要同时调取流水中的数据、收料明细中的数据、材料分类、供应单位等,很多张表

这在向导里,应该是不好做,或者做不到

但向导能生成的那一排按钮组,确实挺有用

我就想自定义一个一对多多多的表单,但做不出相应的按钮。

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-27 01:09
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 3楼 吹水佬
感谢你的提示,让我多学了一招“查看父代码”

但问题是,在百度里,可以搜到“第一条、上一条、下一条、最后一条”这样的按钮组代码,虽然那不是针对多表联动的,但至少可以得到一定的思路

而搜“vfp按钮组添加的代码”之类的,根本搜不到,翻了几本书,也没有细致讲解的

总结一个字,写书的人,太扣门了,传授知识很吝啬啊!
——————————————————————————————————
父代码,例如“添加”的
IF THIS.Parent.EditMode
    THIS.Parent.UpdateRows()
ELSE
    IF !THIS.Parent.AddRec()
        RETURN
    ENDIF
ENDIF

THIS.Parent.EditMode = !THIS.Parent.EditMode
THIS.Parent.AddMode = THIS.Parent.EditMode
THIS.Parent.TopFile = .F.
THIS.Parent.ButtonRefresh()
THIS.Parent.NavRefresh()
————————————————————————————————————————
表单的继承方法
#DEFINE C_NOUPDATE_LOC    "你不能添加新纪录,因为该选定的视图不能发送更新。"
#DEFINE    DIALOG_CLASSLIB "WIZBTNS.VCX"

LOCAL lnSaveRec,lcSaveData,loAddRec,loCustom,cPrimaryKey,lcClassLib,nPrimaryKey

IF EOF() OR BOF()
    GO TOP
ENDIF
lnSaveRec = RECNO()

DO CASE
CASE FILE(DIALOG_CLASSLIB)
    lcClassLib = DIALOG_CLASSLIB
CASE FILE(HOME()+"WIZARDS\"+DIALOG_CLASSLIB)
    lcClassLib = HOME()+"WIZARDS\"+DIALOG_CLASSLIB
OTHERWISE
    lcClassLib = ""
ENDCASE

DO CASE
CASE CURSORGETPROP("SourceType")#3 AND ;
  !CURSORGETPROP("offline") AND ;
  !CURSORGETPROP("SendUpdates")
    MESSAGEBOX(C_NOUPDATE_LOC)
    RETURN .F.
CASE EMPTY(CURSORGETPROP("database"))
    * Free table
    APPEND BLANK
CASE CURSORGETPROP("SourceType")#3
    * View
    APPEND BLANK
CASE CURSORGETPROP("buffering")#1 AND !THIS.lPromptKey
    * buffered data
    APPEND BLANK
CASE EMPTY(lcClassLib)
    * could disable this if you feel
    * potential unique ID conflicts could arise
    APPEND BLANK
OTHERWISE
    lcSaveData = SET("DATABASE")
    SET DATABASE TO CURSORGETPROP("database")
    cPrimaryKey = DBGETPROP(CURSORGETPROP("sourcename"),"Table","PrimaryKey")
    nPrimaryKey = TAGNO(m.cPrimaryKey)
    SET DATABASE TO &lcSaveData
    IF EMPTY(cPrimaryKey) OR m.nPrimaryKey=0
        APPEND BLANK
    ELSE
        cPrimaryKey=KEY(m.nPrimaryKey)
        loAddRec=NewObject("AddRecord",lcClassLib,"")
        loCustom = Create('custom')
        loAddRec.cKeyField = m.cPrimaryKey
        loAddRec.cKeyValue = EVAL(m.cPrimaryKey)
        loAddRec.oRetValue = loCustom
        loAddRec.Show()
        IF loCustom.nBtnAction=1
            INSERT INTO (ALIAS()) ((m.cPrimaryKey)) VALUES(loCustom.cKeyValue)
        ELSE
            THIS.HadError = .T.   
        ENDIF
    ENDIF
ENDCASE

IF THIS.HadError
    THIS.HadError = .F.
    GO lnSaveRec
    RETURN .F.
ENDIF

THISFORM.Refresh()
——————————————————————————————
向导生成的按钮组的继承方法:   

[此贴子已经被作者于2015-10-27 09:40编辑过]


报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-27 01:28
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 4楼 tlliqi
多说说思路呗

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-27 01:35
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
下载了一套程序的源码,分析中

[此贴子已经被作者于2015-10-27 09:57编辑过]


报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-27 09:43
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 13楼 TonyDeng
说的太有道理了

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-28 13:12
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 14楼 wcx_cc
过来人啊,佩服!

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-28 13:13
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
脚踏实地的一步一步跟着书本学,才能做出好程序,才能不问低级问题,从基础到算法,再剖析编程思想、技术内幕。最后发现,自己都可以开发一门语言了。

但我不太清楚,整个过程中,论坛有什么用呢?

我没要答案,我只是要个思路。

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-10-28 13:16
快速回复:命令按钮组的常规代码是什么?
数据加载中...
 
   



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

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