首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

委托(一个主窗体统计多个从窗体的按钮单击的次数)

最近在学习金老师的《.NET2.0面向对象编程揭秘》,学到了13章,委托、事件驱动和异步调用。书上有个试一试,要求:利用委托,达到一个主窗体统计多个从窗体的按钮单击的次数。...25             frmOther frm = new frmOther(); 26             frm.recorder = this.ShowCount;//向从窗体的委托变量赋值...                recorder(counter.ToString()); 29             } 30         } 31     } 32 } 之后,我想进一步修改,在一个主窗体上单击按钮...,多个从窗体同时显示单击的次数。...只是对上面的代码修改了一下,在从窗体初始化后,向主窗体的委托变量赋值时,出现了错误。请大家指教,谢谢。

1.4K80
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Windows 窗体中的事件顺序

    ,Windows 窗体应用程序中引发事件的顺序非常具有吸引力。...当出现需要谨慎处理事件的情况时(例如,在重绘窗体的某些部件时),有必要了解运行时引发事件的确切顺序。 本主题提供了应用程序和控件的生存期中几个重要阶段中的事件顺序的详细信息。...有关鼠标输入事件的顺序的特定详细信息,请参阅Windows 窗体中的鼠标事件。Windows 窗体中的事件的概述,请参阅事件概述。 有关事件处理程序的构成的详细信息,请参阅事件处理程序概述。...Windows 窗体应用程序启动时,主窗体的启动事件将按照以下顺序引发: Control.HandleCreated Control.BindingContextChanged Form.Load...Control.VisibleChanged Form.Activated Form.Shown 应用程序关闭时,主窗体的关闭事件将按照以下顺序引发: Form.Closing

    1.2K20

    Windows窗体应用类型的差异区别

    创建项目的时候如果类型选下面的“Windows窗体应用”,默认使用的 .Net Framework是5.0,就会一直生成 “项目名.runtimeconfig.json”文件 建议选上面这个 .NET...Framework的模板,默认是4.7.x版本,这样就不会生成那个烦人的json(里面也就是一行关于.net运行环境的版本配置,其它啥都没有) 这二者有什么区别呢,我在使用过程中发现二个问题: 1、...Dictionary 类在 5.0 中有 TryAdd方法,而4.7中没有,得改用 ContainsKey 先去检测一下; 2、Application.StartupPath返回的路径(当前 exe 所在的目录...需要的插件通过 NeGet进行安装,不过需要注意在安装 Costura.Fody时,版本不要选最新的,选4.x与当前的 .NET Framework版本匹配。...这样在 Debug/Release 下生成的 exe 就能直接导出给其它同事进行使用了,无须其它依赖。

    92510

    C#学习系列文章之Windows窗体应用程序003

    背景 紧接着上一篇文章,我已经学习了控制台的使用,以及创建不同应用的Helloworld程序,这一篇文章,我介绍Windows窗体应用程序的简单实用,按照调用流程一步一步的操作,希望能帮助初学者也能一步一步的搭建起自己的第一个应用.../ /// 应用程序的主入口点。...完整的Windows 窗体应用程序打开和保存图片 具体的操作步骤如下: 1. 选择新建项目,选择Windows 窗体应用,并命名为showPicture。...[创建showPicture的项目] 2.从工具箱中拖动两个Button和一个PictureBox到面板上,并调整位置对齐为如下的设计: [tk3531887h.png] 3.拖动调整大小 [hvpuoomoaz.png...[rgiald3rmd.png] 然后选择保存图片,设置名称 [保存图片] 然后就有了两张图片在文件夹中 image.png 总结 这就是一个简单的Windows窗体应用程序的使用介绍。

    1.9K31

    创建可调大小的用户窗体——使用Windows API

    标签:VBA,Windows API 在使用VBA创建用户窗体时,通常会将其设置为特定的大小。然而,通过一些编码技巧,可以为其实现类似的调整大小效果。...本文代码能够实现:允许调整用户窗体的大小;调整窗体大小时用户窗体的Resize事件能捕获;每次Resize事件后,对象的大小或位置都会发生变化。...(myUserForm, False) 其中,myUserForm是要调整大小的用户窗体的名称。...示例 在VBE中,插入一个用户窗体,如下图1所示。 图1 可以看到,该用户窗体上包括一个名为“lstListBOx”的列表框和一个名为“cmdClose”的命令按钮。...为此,需要从该用户窗体的底部和右侧了解这些对象的位置。如果与底部和右侧保持相同的距离,则这些元素似乎与该用户窗体同步移动。

    45030

    创建可维护和可测试的 Windows 窗体应用程序的 10 种方法(译)

    我遇到的大多数 Windows 窗体应用程序都不存在或单元测试覆盖率极低。而且它们通常也很难维护,项目中各种 Form 类的代码背后有数百甚至数千行代码,但它不必是这样。...仅仅因为 Windows 窗体是一项“遗留”技术,并不意味着你注定会造成无法维护的混乱。下面是创建可维护和可测试的 Windows 窗体应用程序的十个技巧。 1....将非 UI 代码排除在后面的代码之外 在 Windows 窗体应用程序中,你总是会在窗体背后的代码中找到访问网络、数据库或文件系统的代码。这严重违反了“单一责任原则”。...它们还极大地简化了跨多个链式后台任务的异常处理。它们非常适合 Windows 窗体应用程序,如果你还没有的话,非常值得一试。...10.不要太晚 可以将我上面描述的所有模式和技术改造为现有的 Windows 窗体应用程序,但我可以从痛苦的经验告诉你,这可能需要大量工作,尤其是当窗体背后的代码达到数千行时。

    1.3K10

    汇编语言学习笔记-创建最基本的windows窗体

    ,请暂且不要再看本系列的其他文章了,先学学WINDOWS API的相关知识吧 3 以上代码摘自一个汇编语言全接触的CHM 是一个名叫Lxx的前辈翻译的 4 希望得到大家的支持 .386 .model...flat,stdcall;内存平坦,参数传递约定 option casemap:none;大小写敏感 ;;;;;;引用一些必要的数据 include D:\masm32\include\windows.inc...;;;;;;代码段 .CODE start: ;程序的入口与end start对应 invoke GetModuleHandle,NULL;调用API函数获取应用程序句柄并把句柄存入eax寄存器...eax);如果获取的消息为WM_QUIT就退出消息循环 invoke TranslateMessage,ADDR msg;按键消息的转义 invoke DispatchMessage,ADDR msg;...把消息发送到负责消息处理的函数,回调方法 .ENDW mov eax,msg.wParam;把退出的消息代码码放到EAX里然后回到主函数 ret WinMain endp WndProc proc hWnd

    59730

    Python GUI项目实战(二)主窗体的界面设计与实现

    前言 上一节我们介绍了登录窗体的GUI设计与功能实现,用户的账号和密码校验完成后应当跳转到主窗体内容,这一节我们将具体介绍主窗体界面的设计与功能实现!...四、实现登录用户登录信息加载 登录成功后,在顶部显示用户姓名和登录时间,用户姓名是怎么来的?是我们在登录窗口输入的,所以这就涉及到了跨窗体数据的传递。这一点非常重要!...登录窗体(登录信息)==>主窗体 传递的基本方式:构造函数 在主窗体的构造函数中添加一个接收参数current_user,在登录窗体加载新窗体时将参数传递进去; 但是我们登录窗体的登录函数login()...我们需要在登录窗体的构造函数中定义全局变量: self.user = "" # 当前的用户 为了获取用户登录的时间,我们定义一个获取当前时间的方法: def get_now_time(self):...最后 这一节我们实现了主窗体的搭建,从界面的布局到TreeView加载全部学生信息。学生数据如此之多,如果我们想精确查看具体某个学生的信息,那该怎么做呢?

    4.3K22

    技术日志挑战——第9天:0801

    在Visual Basic的Windows Forms应用程序中设置“关闭模式”指的是配置应用程序的行为,以确定在主窗体关闭时如何处理应用程序的退出。...这项设置决定了是否关闭所有运行中的窗体并退出应用程序。默认情况下,关闭主窗体(通常是启动应用程序时首先打开的窗体)时,应用程序会退出。...在打开的项目属性页面中,点击“应用程序”选项卡。你将看到一个名为“关闭模式”的下拉菜单。其中有几个选项:“当启动窗体关闭时退出”:这意味着当你的启动窗体关闭时,应用程序将完全退出。...“当最后一个窗体关闭时退出”:这意味着应用程序将继续运行直到最后一个打开的窗体被关闭。选择“当启动窗体关闭时退出”选项。点击“确定”保存更改。...如果你的应用程序中只有一个主窗体,那么这个设置可能不会对行为产生太大影响。但如果你有多个窗体或者你的应用程序在后台运行任务,选择正确的“关闭模式”将非常重要。

    8510

    窗口结束不断循环的线程

    ,比如 “aaa.exe” 注意: 如果把方法放到类里,这里定义类的方法为静态方法,调用时直接类名.方法使用 另外解决方法: .net类库已经帮助我们实现了窗口的关闭,如果此窗口是系统的主窗口,关闭此窗口即应该退出了整个应用程序...系统主窗口,实质上是Main函数中开始消息循环的窗口,这个消息循环结束后,Main函数就基本上完成了历史使命,整个应用程序自然就结束了。...(); this.Close(); } 从查MSDN和从网上查资料可以知道,Dispose()方法,虽然能释放当前窗体的资源,却不能强制结束循环, 要想强制突出当前程序要用:System.Environment.Exit...4.Form.Close: 在 Windows(Win32 或 .NET)中关闭应用程序的正确方式是关闭它的主应用程序窗口(例如 Form.Close)。...主消息泵结束后依然存在的任何窗口都需要手动关闭。在应用程序退出之前通过调用 Form.Close 或 Form.Dispose 来关闭窗口是清除窗口的良好做法,但这需要您有意识地去做。

    1.6K41

    Wallpaper的原理和C#实现(含源文件)

    wallpaper是一款优秀的动态壁纸软件,除了播放动画以外,还可以执行程序,甚至可以实时响应鼠标移动。...C#实现 界面绘制 首先创建两个窗体,一个用来播放视频,一个用来控制 上图是控制窗口,也是主窗口。...在主窗体的load事件里新建VideoForm。为了让VideoForm能够夹在图标层和背景层中间,需要将VideoForm的父窗体设置为背景窗体。...这里利用了windows窗口的一个特性:如果A窗体在B窗体上面,那么A窗体也会在B窗体的子窗体上面。...,但是桌面变成了一张白纸,极其难看,目前暂不知道为什么会发生这种情况,个人猜测是windows考虑到背景是一张静态图,所以不会实时刷新,而刚刚被覆盖掉的地方就会保持最后一次刷新的颜色,刚才点击“退出”时

    2.4K10

    关于DialogResult

    “确定”按钮的DialogResult的属性, 设置完成后,只要用户一点击“确定”按钮,那么对话框就关闭,重新回到主窗体,然后可以在主窗体中进行相应的处理,比如把数据写入数据库等。...) 这个判断就为真,不管你的邮件格式是否正确,主窗体都会继续向下执行。...} form2中 button事件: DialogResult = DialogResult.OK; 模态对话框:Modal Dialogue Box,是指在用户想要对对话框以外的应用程序进行操作时...(VS.80).aspx 窗体的对话框结果是当窗体显示为模式对话框时从该窗体返回的值,如果窗体显示为对话框,用DialogResult枚举中的值设置此属性将设置该窗体的对话框结果值、隐藏模式对话框并将控制返回给调用窗体...因为此行为,所以当应用程序不再需要该窗体时,必须调用该窗体的 Dispose 方法。 可以使用此属性确定对话框是如何关闭的,以便正确处理在该对话框中执行的操作。

    1.1K10

    VBA实战技巧16:从用户窗体的文本框中复制数据

    有时候,我们需要从用户窗体的文本框中复制数据,然后将其粘贴到其他地方。下面举例说明具体的操作方法。 示例一:如下图1所示,在示例窗体中有一个文本框和一个命令按钮。...当用户窗体被激活时,文本框中自动显示文字“完美Excel”,单击“复制”按钮后,文本框中的数据会被复制到剪贴板。 ? 图1:带有文本框和命令按钮的用户窗体 首先,按图1设计好用户窗体界面。...CommandButton1_Click() With myClipboard .SetText Me.TextBox1.Text .PutInClipboard End WithEnd Sub 在图1所示的用户窗体中添加一个文本框...,上述代码后面添加一句代码: Me.TextBox2.Paste 运行后的结果如下图2所示。...图2 示例二:如下图3所示,在用户窗体中有多个文本框,要求单击按钮后将有数据的文本框中的数据全部复制到剪贴板。 ? 图3:带有6个文本框和1个命令按钮的用户窗体 首先,按图3设计好用户窗体界面。

    4K40

    1-3 Winform 中的常用控件(

    1-3 Winform 中的常用控件 u 本节学习目标: n System.Windows.Forms.Control基本结构 n 使用基本控件如标签、文本、按钮、列表框和组合框 n 掌握窗体的常用属性和方法...Control 类为在Form中显示的所有控件提供基本功能,Form类表示应用程序内的窗口。...图1-8 员工信息录入窗体目标界面 u 实验步骤(1): 由图1-9所示,从工具箱之中拖拽具体的控件到Form窗体上,并更改标签对象和按钮的text属性为图1-8所标内容。...一般而言,如果只有一个窗口或者是MDI(多文档窗体)里面的主窗口则是退出程序,Form.close()也是一种安全的方式,但如果是打开多个文档窗口的情况,退出系统必须使用Application.Exit...图1-11 窗口打开与关闭窗体目标界面 u 实验步骤(1): 由图1-11所示,从工具箱之中拖拽标签控件和linkLabel超链接文本控件到Form窗体上,更改标签文本的颜色、字体和大小属性,填写每个控件的

    2.8K10

    WPF:自动执行机器人程序若干注意事项

    企业应用中,经常会遇到一些需要定时自动执行的程序来完成某些功能,比如:自动定时从第三方web service取回数据、定时对历史数据进行清理、定时向ftp上传业务数据......presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" WindowStyle="None" ...> 将主窗体的...3.最小化到系统托盘 Winform中的NotifyIcon控件在WPF中仍然可以继续使用 先 using System.Windows.Forms; 添加Windows.Forms命名空间的引用 再声明一个窗体级的变量...,主动提醒 虽然做了无边框窗体的处理,但是如果用户意外按了Alt+F4,甚至误操作注销或重启Windows,程序还是会直接退出的,最好能给个提示,这样管理员看到提示后,有机会取消误操作 先给主窗体增加Closing...但这样还不够,如果Windows注销时,仍然会直接退出 这就需要 using Microsoft.Win32;使用Win32命名空间下的某些功能了,主窗体构造函数中,增加: //捕获关机事件 SystemEvents.SessionEnding

    1.3K80

    CC+的角角落落 第二辑 002

    使用Windows API构建窗体应用 就历史来说,使用纯API开发窗体应用程序是上个世纪80年代以前的事情了,开发应用程序的人需要使用大量接近系统内核的API来完成应用程序的设计(当时C的版本还很低,...当Windows操作系统启动一个程序之后,由编译器插入到可执行文件中的启动代码(之前还干了一堆事情,初始化各个段,初始化堆、栈等)调用WinMain函数启动应用程序。...在Windows平台使用API绘制窗体的基本流程是: *第一步按照Windows平台的标准,定义并设计一个窗体类(定义并设置一个包含窗体属性的结构体WNDCLASSEX,这个结构体的结构是有官方文档的)...我们使用Windows系统提供的API的方案进行消息处理。总共有两个消息队列,一个是应用程序的(进程的),另一个是窗体的。...最后如果接收到退出消息,你需要退出消息处理循环后,按顺序分别使用API,DestroyWindow删除窗体,UnregisterClass取消注册窗体类然后退出程序。

    88750

    PyQt5编程基础 2.2 信号与槽函数-设置信号与槽函数

    底部的Signals Slots Editor出现一条数据将关闭按钮与close()槽函数关联右边没有close按钮,要选显示从QWidget继承的信号和槽保存Qt项目,将ui文件拷贝到Eric6目录中...form=QmyDialog() #创建窗体 form.show() sys.exit(app.exec_())运行myDialogmyDialog可以直接运行确定和退出两个按钮都可以正常使用...该文件的功能是创建应用程序和主窗体,然后显示主窗体,并开始运行应用程序。...appMain.py将myDialog.py文件的测试运行部分单独拿出来作为一个文件当一个应用程序有多个窗体,并且窗体之间有数据传递时,appMain.py负责创建应用程序的主窗体并运行起来,这样使整个应用程序的结构更清晰...QmyDialog app = QApplication(sys.argv) #创建GUI应用程序mainform=QmyDialog() #创建主窗体mainform.show

    45820
    领券