VB6.0的问题,怎样判断传进来的参数,高手请进!!!!!!!!!!!!!

songyingjian2008 2008-12-05 01:22:44
我用的是VB6.0,数据库是SQL Server 2005。
主画面中有ComboBox(假如显示的是公司的名称),还有追加和编辑按钮,
我想对ComboBox中的内容进行操作,就是对公司进行操作。
点击追加按钮,弹出一个子对话框,追加一个新的公司信息,
点击编辑按钮,弹出相同的子对话框,对ComboBox中显示的公司进行编辑。
问:在子对话框中,追加的时候所有的值都是空的,编辑的时候是有值的,
怎样来写什么时候是空的什么时候有值呢?就是说怎样在子画面中怎样来
判断是点击追加按钮还是编辑按钮过来的呢。
写代码我是新手,谢谢各位高手来指点!!!
...全文
68 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
linghuxiaochong 2008-12-05
  • 打赏
  • 举报
回复
你说的字画面也就是一个窗体,类名叫做Form2,
dim ChildForm as new Form2
strCurrCompName.显示() '阻塞得模式显示我忘了怎么写了,就是关闭之前不能执行下一句代码
当用户填写名称后,在点子窗体的确定按钮时,你将该值记录到一个全局变量中

然后,如果是新加公司按钮,
子窗体关闭后,将该值添加到下拉列表中
如果是修改按钮
就将这个值替换下拉列表的相应项
Tiger_Zhao 2008-12-05
  • 打赏
  • 举报
回复
主画面
private sub cmdAdd_Click()
dim sCorporation as string
if frmCorpEdit.Action(sCorporation) then
combo1.add sCorporation '新公司添加到 ComboBox
end if
end if

private sub cmdEdit_Click()
if combo1.text = "" then exit sub
frmCorpEdit.Action combo1.text
end if


子画面 frmCorpEdit
Option Explicit

private m_Result as boolean
private m_Corporation as string

public function Action(byref sCorporation as string) as boolean
m_Result = false
m_Corporation = sCorporation

load me
if sCorporation = "" then
新增状态,留空
else
编辑状态,按 sCorporation 读取记录并显示
txtCorporation = sCorporation
txtCorporation.Enabled = False
end if

me.show vbModal

sCorporation = m_Corporation
Action = m_result
end function

private sub cmdOK_click()
if m_Corporation = "" then
做 INSERT
else
做 UPDATE
end if

m_Corporation = txtCorporation
m_Result = true
unload me
end sub
神马都能聊 2008-12-05
  • 打赏
  • 举报
回复

private AddOrEdit as string

public sub Set_State(byval s_State as string)
on error goto err
AddOrEdit = s_State
exit sub
err:
end sub

private sub cmdEdit_click()
dim newfrm as frmCompany

newfrm.set_state "Edit"
set newfrm = nothing
end sub

private sub cmdAdd_click()
dim newfrm as frmCompany

newfrm.set_state "Add"
set newfrm = nothing
end sub

private sub Form_Load()
select case AddOrEdit
'注意大小写
case "Add"
call Init_Ctrl
case "Edit"
call Init_Company
end select

private sub Init_Company()
'根据编辑时传递来的内容初始化
end sub

private sub Init_Ctrl()
'防止控件含有垃圾数据,初始化控件
end sub
songyingjian2008 2008-12-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zuoxingyu 的回复:]
楼主真好玩,主画面子画面都出来里,拍电影呀??

从文字描述来看,一个COMBOBOX,然后2个按钮COMMAND,2个FORM,1个是主画面,一个是子画面,子画面是用来添加和修改的。

在子对话框中,追加的时候所有的值都是空的,编辑的时候是有值的,
追加的时候,FORM2在SHOW的时候,把编辑框内容清空。。如果是编辑修改,就赋值

怎样来写什么时候是空的什么时候有值呢?就是说怎样在子画面中怎样来
判断是点击追加按钮还是编辑…
[/Quote]
我也知道是这么回事,子对话框是相同的,只不过是空和赋值的区别了
关键是怎样来判断什么时候是空,什么时候赋值呀
songyingjian2008 2008-12-05
  • 打赏
  • 举报
回复
ComboBox的值是从数据库中读出来的。
我想定义个参数,点击追加按钮一个状态,点击编辑按钮一个状态
但是我不知道这样可不可以,如果可以的话,怎么样来定义呢,
在哪里怎么定义呢?


zuoxingyu 2008-12-05
  • 打赏
  • 举报
回复
楼主真好玩,主画面子画面都出来里,拍电影呀??

从文字描述来看,一个COMBOBOX,然后2个按钮COMMAND,2个FORM,1个是主画面,一个是子画面,子画面是用来添加和修改的。

在子对话框中,追加的时候所有的值都是空的,编辑的时候是有值的,
追加的时候,FORM2在SHOW的时候,把编辑框内容清空。。如果是编辑修改,就赋值

怎样来写什么时候是空的什么时候有值呢?就是说怎样在子画面中怎样来
判断是点击追加按钮还是编辑按钮过来的呢。


根据你按哪个按钮来判断你做的什么操作,是编辑还是添加。。。。

代码就不累赘了。
jhone99 2008-12-05
  • 打赏
  • 举报
回复
ComboBox是绑定的吗?

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧