c#.net中一个窗体需要引用其他窗体的axmapcontrol,怎么添加构造函数?

c#.net中一个窗体需要引用其他窗体的axmapcontrol,怎么添加构造函数?,第1张

C#中父视窗和子视窗之间实现控制项交互 *** 作

很多人都苦恼於如何在子表单中 *** 作主表单上的控制项,或者在主表单中 *** 作子表单上的控制项。相比较而言,後面稍微简单一些,只要在主表单中创建子表单的时候,保留所创建子表单物件即可。

下面重点介绍前一种,目前常见的有两种方法,基本上大同小异:

第一种,在主表单类中定义一个静态成员,来保存当前主表单物件,例如:

public static yourMainWindow pCurrentWin = null

然後在主表单构造函数中,给静态成员初始化,如下:

pCurrentWin = this

那麼在子表单中调用父表单,可以通过“主表单类名. pCurrentWin”来 *** 作当前的主表单。

第二种,是在子表单中定义一个私有成员,来保存当前主表单物件,例如:

private yourMainWindow pParentWin = null

然後在子表单构造函数中,加一参数,如下:

public yourChildWindow( yourMainWindow WinMain )

{

 pParentWin = WinMain

 //Other code

}

在主表单创建子表单的时候,要把this作为参数来构造子表单,这样在子表单中调用父表单,可以直接用“this.pParentWin”就可以了

不过以上所作的,只是让你能够访问当前主表单物件,那麼如何 *** 作控制项,很多人直接修改控制项的成员访问符,即把“private”改为“public”,我觉得这样破坏了本身类的封装,所以我比较喜欢的做法是增加公有属性或方法来供调用,例如:

public string ButtonText

{

 get{ return btn.Text}

 set{ btn.Text = value}

}

public void Button_Click()

{

 this.btnDConvert.PerformClick()//Execute button click

}

1、打开VB6.0,新建一个工程,在窗体中添加一个命令按钮,caption分别改为“调用函数”,将窗体Form1的caption属性改为“VB6.0自定义函数”,将界面设置成下图:

2、双击窗体Form1,进入代码编辑窗口,单击左侧下拉三角形,选择通用。

3、在通用段输入如下代码:

Public Sub F1(n%, ByVal m%)

n = n Mod 10

m = m \ 10

End Sub

并将Form_Load事件删除。

以上代码就定义了函数F1,其中包括两个参数,类型均是整型,%表示 短整型,Byval表明了值传递方式,表示值传递,与地址传递相对应。这也是默认的传递方式。

4、双击“调用函数”命令按钮,进入代码编辑窗口,输入如下代码:

Dim x%, y%

x = 12: y = 34

Call F1(x, y)

Print x, y

yongcall进行函数的调用,参数与自定义函数中参数一一对应。

5、然后关闭代码窗口,按下F5运行程序,单击“调用函数”命令按钮,在窗体中打印输出2   34,可以自己想下为什么是这个结果,这个结果和函数的值传递方式有关,


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7965968.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存