全面分析VB.NET窗体指针

本文向大家介绍VB.NET窗体指针,可能好多人还不了解VB.NET窗体指针,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

创新互联建站-专业网站定制、快速模板网站建设、高性价比路桥网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式路桥网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖路桥地区。费用合理售后完善,十余年实体公司更值得信赖。

VB.NET窗体指针在项目中的传递

除了把窗体实例全局化以外,你还可以把VB.NET窗体指针保存在变量中传递给需要访问该窗体的例程。假设你有一个窗体 Form1,并希望在点击 Form1 中某个按钮 (Button1) 时打开另第二窗体 Form2 ,然后在点击第二窗体 Form2 中的另一个按钮 (Button2) 时进行某项计算。你可以把整个代码都写在 Form1 中,即:

 
 
 
  1. Public Class Form1  
  2. Inherits System.Windows.Forms.Form  
  3. Dim myForm2 As Form2  
  4.  
  5. Private Sub Button1_Click(ByVal sender As System.Object, _  
  6. ByVal e As System.EventArgs) Handles Button1.Click  
  7. myForm2 = New Form2()  
  8. myForm2.Show()  
  9. End Sub  
  10.  
  11. Private Sub Button2_Click(ByVal sender As System.Object, _  
  12. ByVal e As System.EventArgs) Handles Button2.Click  
  13. Calculations.CompoundInterestCalc(myForm2)  
  14. End Sub  
  15. End Class  

无论是把VB.NET窗体指针全局化,还是把它以参数的形式传递,都是可行的。然而,你必须根据项目的需要选择***方案。当 .NET 项目中只有少数几个过程需要访问特定窗体时,我建议你给这些过程增加一个参数,以在必要时接受VB.NET窗体指针。当你的项目有太多过程需要访问该窗体时,你就应该考虑设置一个全局VB.NET窗体指针变量。当然了,你***还是考虑调整项目代码结构,使得真正访问该窗体的类或者过程只有一个。如果你希望用窗体来显示登录信息,则你可以先创建一个类,把窗体实例保存为它的 Shared 类成员,然后添加一个 Shared 方法 WriteToLogWindow 来完成实际的窗体访问。于是,项目中的任何代码只需调用此 WriteToLogWindow 方法就能间接访问显示登录信息的窗体了:

 
 
 
  1. Public Class Log  
  2. Private Shared m_LogForm As Form2  
  3. Public Shared Property LogForm() As Form2  
  4. Get  
  5. Return m_LogForm  
  6. End Get  
  7. Set(ByVal Value As Form2)  
  8. m_LogForm = Value 
  9. End Set  
  10. End Property  
  11.  
  12. Public Shared Sub WriteToLogWindow(ByVal Message As String)  
  13. Dim sb As New _  
  14. StringBuilder(m_LogForm.txtLogInfo.Text)  
  15. sb.Append(Environment.NewLine)  
  16. sb.Append(Message)  
  17. m_LogForm.txtLogInfo.Text = sb.ToString()  
  18. End Sub  
  19. End Class  

网页标题:全面分析VB.NET窗体指针
网站地址:http://www.mswzjz.cn/qtweb/news24/545724.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能