在Form窗体中,this的应用

2023-11-03

背景:

在BHHT_Bill界面中点击某个按钮时,弹出BHZX界面,并在BHZX界面中输入值,然后将BHZX界面中输入的值传递回BHHT_Bill界面。

在BHHT_Bill界面中:

属性:
public string vsBZ = string.Empty;//用来接收弹出界面修改的值
某函数AA中的代码:
BHGL.BHHT.BHZX bhzx = new BHGL.BHHT.BHZX();
bhzx.ShowDialog();
MessageBox.Show("某某操作成功!");

在BHZX界面中:

某函数BB中的代码:
BHHT_Bill bill = new BHHT_Bill();
bill.vsBZ = this.txtBZ.Text;//备注
this.Close();

在代码跟踪的时候,打开BHZX界面并输入值后,bill.vsBZ中是有值的,但当执行到this.Close()后,返回到BHHT_Bill界面中时,函数不会执行MessageBox.Show("某某操作成功!"),而会跳转至声明公共变量属性的地方,开始执行,也就是会再次执行public string vsBZ = string.Empty,执行完变量属性后,才会到达MessageBox.Show("某某操作成功!")的语句,从而BHZX界面传值回BHHT_Bill界面失败!
那么传值失败的原因是什么呢?
原因在于:BHHT_Bill bill = new BHHT_Bill();这句话,因为这是新建了一个BHHT_Bill的实例,从而需要获取这个类的属性,也就是需要执行BHHT_Bill类中变量属性部分的代码。
那么如何实现传值呢?

在BHHT_Bill界面中:

public string vsBZ = string.Empty;//用来接收弹出界面修改的值
某函数AA中的代码:
BHGL.BHHT.BHZX bhzx = new BHGL.BHHT.BHZX();
bhzx.bill = this;//传递窗体自身,而不是新的窗体
bhzx.ShowDialog();

在BHZX界面中:

变量属性:
public BHHT_Bill bill;
某函数BB中的代码:
bill.vsBZ = this.txtBZ.Text;//备注
this.Close();

小注:

通过传递窗体自身,而不是新的窗体,可以实现ShowDialog()界面之间的传值(循环调用)。

最佳实践:

由this(即循环调用)来实现这种功能,其实可以通过一种更为简单、易懂的方式来实现。

代码如下:

在BHHT_Bill界面中:

BHGL.BHHT.BHZX bhzx = new BHGL.BHHT.BHZX();           
bhzx.ShowDialog();
string vsTxtBZ = bhzx.psBZ;
bhzx = null;//注意清空

在BHZX界面中:

变量属性:
public string psBZ = string.Empty;
某函数中的代码:
psBZ = this.txtBZ.Text;


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Form窗体中,this的应用 的相关文章

  • 往届生再培训:嵌入式培训4个月,我经历了什么?

    每年的五月正值万物生长的蓬勃季节 自己也不能够落下 拾起尘封日久的书籍 翻开黄黑相间的教程 刷新在线浏览的视频 有意而无形之间 我的嵌入式之旅悄然开始了 但网络资源过于丰富 让我有些眼花缭乱 难以把握重点 同时 自制力也有些许的不足 这些都
  • 互联网生活中的隐私保护:隐私换便利还是花钱护隐私?

    近日 某高校毕业生在校期间窃取学校内网数据 收集全校学生个人隐私信息的新闻引发了人们对互联网生活中个人信息安全问题的再度关注 在大数据时代 算法分发带来了隐私侵犯 在享受消费生活等便捷权利的同时 似乎又有不少个人信息泄露的担忧 用隐私换便利
  • 区块链+跨境支付的优势

    全球互联网的高速发展也带动了跨境电商的快速发展 跨境支付也瞬间成为第三方支付领域的一个风口 而将区块链技术应用在跨境支付领域也逐渐成为市场的热点需求 传统的跨境支付方式中间环节繁杂 费时又费力 而且跨境电商卖家在跨境支付环节 存在境外银行账
  • 快速生成dto转vo的方法

    方法1 使用BeanUntils 所属包org springframework beans BeanUtils demo Entity实体类 import lombok Data import java util Date author s
  • 分布式软件架构——SOA架构/微服务架构/无服务架构

    SOA架构 Service Oriented Architecture 面向服务的架构 面向服务的架构是一次具体地 系统性地成功解决分布式服务主要问题的架构模式 了解SOA架构前 先了解三种比较有代表性的服务拆分的架构模式 这些架构模式是S
  • 对KVM虚拟机进行cpu pinning配置的方法

    这篇文章主要介绍了对KVM虚拟机进行cpu pinning配置的方法 通过文中的各种virsh命令可进行操作 需要的朋友可以参考下 首先需求了解基本的信息 1 宿主机CPU特性查看 使用virsh nodeinfo可以看到一些基本信息 vi
  • Java架构纯享版进阶手册:核心框架篇,斩获阿里年薪50W+

    在做管理的时候 我发现了很多同事职业发展的问题 很多同事都是积极好学 自己看了很多书 网上买了很多视频 也参加过不少培训课程 但是发现自己的技术始终在某个瓶颈徘徊 始终没法达到一个很高的位置 为什么呢 这里我援引大量同事给我的反馈 我是看了
  • 我们为什么要上学--奥巴马开学演讲稿

    美国总统奥巴马开学演讲 Why do We Go to School Hello everybody Thank you Thank you Thank you everybody All right everybody go ahead
  • BigDecimal转成String

    String total String map get total 结果就报了java math BigDecimal cannot be cast to java lang String异常 查询发现 问题是出在强转上 只要改成 Stri
  • JavaScript中字符串运算符的使用

    字符串运算符是用于两个字符串型数据之间的运算符 它的作用是将两个字符串连接起来 在JavaScript中 可以使用 和 运算符对两个字符串进行连接运算 其中 运算符用于连接两个字符串 而 运算符则连接两个字符串 并将结果赋给第一个字符串 另
  • 精选9款迷人的HTML5 3D动画效果及源码

    新的一周开始了 今天小编要为大家分享最新整理的9款HTML5 3D动画效果及源码下载 前端爱好者都可以来学习一下 以下就是详细的内容 一起来看看 1 HTML5 3D图片折叠特效 超炫酷图片特效 我们之前介绍过很多HTML5 3D图片效果
  • 神经网络之反向传播算法(梯度、误差反向传播算法BP)

    文章目录 一 反向传播及梯度 二 误差反向传播算法 BP 1 算法原理 2 算法实现 2 1 训练过程 2 2 测试过程及结果 3 参考源码及数据集 一 反向传播及梯度 在神经网络中 初始化生成的参数在使用时往往难以使网络获得最好的回归效果
  • 10讲学会C语言之第10讲:学生管理系统

    文章目录 前言 一 文件操作 二 系统介绍 三 作业 前言 大家好 我是卷卷 本节课是最后一讲 学生管理系统 本节课主要有以下三个部分 文件操作 系统介绍 作业 文末附课程资源和讨论q群号 一 文件操作 程序是在内存中运行的 一旦程序结束
  • wazauh离线部署

    官网 https wazuh com 如果服务器可以联网 直接参照官网文档部署即可 为方便安装 选择手动下载rpm包进行安装 wazuh相关下载地址 https documentation wazuh com 3 12 installati
  • Java课题笔记~ ServletContext

    单个Servlet的配置对象 web xml
  • vue-a-table表格前端实现多个条件搜索筛选功能实现(模糊查询)

    监听里面实现多条件查询
  • pip.conf的报错

    global index url https pypi tuna tsinghua edu cn simple extra index url http mirrors aliyun com pypi simple http pypi do
  • 软件测试面试题及答案,2021最强版!

    1 你的测试职业发展是什么 测试经验越多 测试能力越高 所以我的职业发展是需要时间积累的 一步步向着高级测试工程师奔去 而且我也有初步的职业规划 前3年积累测试经验 按如何做好测试工程师的要点去要求自己 不断更新自己改正自己 做好测试任务
  • JAVA1

    文章目录 计算机的硬件与软件 DOS命令 计算机的硬件与软件 DOS命令
  • 【硬创邦】跟hoowa学做智能路由(九):时区/服务/SSH

    在第三部分Area 3部分 路由器的基础功能已经讲了很多 这些部分组成了一款可用的路由器 本章将继续介绍余下的一些常用系统配置 系统信息和时区 我们大家知道电脑重新开机后时间都保留着 那是因为我们的主板上有电池和时间芯片 一般该芯片是达拉斯

随机推荐

  • 【Shell牛客刷题系列】SHELL29 netstat练习1-查看各个状态的连接数

    该系列是基于牛客Shell题库 针对具体题目进行查漏补缺 学习相应的命令 刷题链接 牛客题霸 Shell篇 该系列文章都放到专栏下 专栏链接为 专栏 Shell 欢迎关注专栏 本文知识预告 本文复习了sort awk uniq grep等命
  • css 单行文字多余部分显示省略号

    css 单行文字多余部分显示省略号 如下图 当文字太多超出一行时不好看了 设置一下只显示一行 多余部分显示省略号 overflow hidden text overflow ellipsis 禁止换行显示 white space nowra
  • Docker安装Kafka教程

    Docker安装Kafka教程 本教程将指导您如何使用Docker安装和运行Kafka app tier 网络名称 driver 网络类型为bridge docker network create app tier driver bridg
  • 记一位大三计算机同学的2021春招

    知乎传送门 楚留香 你的2022届暑期实习怎么样了 摘要 均为算法岗 MSRA 商汤研究院 百度商业研究院 阿里支付宝算法 腾讯安全联邦学习 美团某toB团队算法 字节AI Lab CV算法 腾讯AI Lab 研究
  • 图片压缩网站-免费压缩网站

    https tinypng com 图片压缩网站 重点是免费 免费 免费 重要的事情说3遍
  • Walking Around the Country 【OpenJ_POJ - C17E】【欧拉通路】

    题目链接 题意 有N个点 M条边 给出 u v w 表示u到v要至少经过w次 并且整张图是完全连通图 有向图 问的是最少的次数走完所有大额M条边 思路 由于 所以我们完全可以当作只有条边 我们要跑完这条边 所以既然是跑完所有边的做法 那么不
  • 使用c语言函数指针和结构体实现动态绑定(面向对象写法)

    概述 无意中在某个地方看到这样的写法 为此做下笔记 C语言面向对象写法 有点像C 味道 科普一下函数指针知识 其实函数指针可以类比一般的变量 如下所示 int a lt gt void haha void int p lt gt void
  • 服务器机房维护彩页宣传,服务器机柜宣传彩页-090317.pdf

    服务器机柜宣传彩页 090317 Integrated Cabinet Solutions for Business Critical ConTinuityTM Contents 01 Knurr 02 F 03 F 04 M 05 M 0
  • 博客笔记大汇总

    关于我的博客大汇总整理 目录介绍 01 Java博客大汇总 02 Android博客大汇总 03 开源项目推荐 04 bug分析大汇总 05 技术问题整理 06 算法 07 Python学习笔记 08 Go学习笔记 09 生活博客汇总 10
  • MyISAM 和 InnoDB 的区别

    对比项 MyISAM InnoDB 主外键 不支持 支持 事务 不支持 支持 锁 表锁 操作一条记录也会锁住整个表 不适合高并发 行锁 操作只锁一行 不影响其他行 适合高并发 缓存 只缓存索引 不缓存数据 缓存索引和数据 对内存要求高 表空
  • 个人小程序借助免费插件实现智能语音问答功能

    目标 个人小程序实现智能语音问答功能 实现 小程序免费插件chatbot 微信智能开发平台 微信同声传译插件 免费 借助tenserflow js的小程序插件 tenserflow免费训练库 代办 示例 智能对话小程序
  • angular:富文本编辑器推荐ngx-quill

    npm网址ngx quill npm 官方网址Quill Your powerful rich text editor 使用 npm install ngx quill npm i save dev types quill 1 3 10 2
  • Qt导入ui文件的方法

    1 首先对项目Test 0右键点击 添加现有文件 选择要添加的新的Design 5 ui文件 导入新的ui文件 2 打开Test 0 pro文件 会有以下形式的代码 确保其中有导入的ui文件Design 5 ui FORMS a ui b
  • Spring ioc容器创建过程(1)BeanFactory初始化

    文章目录 一 ApplicationContext 二 常见的ApplicationContext 三 ioc容器的初始化 1 AbstractApplicationContext prepareRefresh 2 AbstractAppl
  • PYTHON学习:numpy初探

    1 size itemsize size 矩阵元素数目 itemsize 矩阵每个元素的字节数 2 non zero 返回非0元素的索引 3 mean 返回矩阵所有元素的平均值 4 nan np nan值np中的空值 空值和isNone不是
  • DOS命令(windows)

    DOS命令 windows 目录 1 打开命令提示符 2 切换至根 3 当前路径 4 切换至上级路径 5 查看当前目录 6 查看文件内容 7 删除文件 8 进入长文件夹名时缩写 9 复制文件 10 移动文件 1 打开命令提示符 命令 win
  • 【opencv】Python-OpenCV自学自用笔记-上篇

    前言 本文是我在学习opencv时记录的笔记 内容较为简洁 会记录从入门到做项目这段时间的内容 最终目的是完成我的毕业设计 欢迎大家给予批评指正 本篇为第一本书 Python OpenCV从入门到精通 的笔记 前两章为安装 略过 第六章到第
  • 基于Jekyll创建免费的静态博客站点

    完整版请参考 https mazhaoxin github io 2018 08 04 Create Free Static Blog Base On Jekyll http 483v7j coding pages com 2018 08
  • JavaScript & ES6 部分面试题汇总

    1 js数据类型有哪些 基本类型 字符串 String 数字 Number 布尔 Boolean 空 Null 未定义 Undefined Symbol 唯一值 引用类型 对象 Object 数组 Array 函数 Function Set
  • 在Form窗体中,this的应用

    背景 在BHHT Bill界面中点击某个按钮时 弹出BHZX界面 并在BHZX界面中输入值 然后将BHZX界面中输入的值传递回BHHT Bill界面 在BHHT Bill界面中 属性 public string vsBZ string Em