
进程同步
发布日期:2021-05-14 14:58:33
浏览次数:21
分类:精选文章
本文共 2770 字,大约阅读时间需要 9 分钟。
对 话 框 对话框 对话框
1.对话框
对话框 Dialog,用于获取用户的输入
Form,代表一个窗口,普通窗口或对话框窗口
演示:- 添加一个窗体
- 界面设计
使用对话框
弹出对话框窗口:MyDialog dlg =new MyDialog();dlg.ShowDialog(this);dlg.Dispose();
其中,
- dlg.Show() 作为普通窗口显示
- dlg.ShowDialog() 作为对话框窗口显示
using Newtonsoft.Json;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WinForm基础22{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { MyDialog dlg = new MyDialog(); dlg.ShowDialog(this); dlg.Dispose(); } }}
Form窗口对象含有非托管资源,需要手工销毁
但是: 为什么刚刚ShowDialog(),就用Dispose()把它销毁掉?2.对话框的阻塞
阻塞Blocked,是对话框最重要的一个特性
示例:MyDialog dlg = new MyDialog();dlg.ShowDialog(this);dlg.Dispose();
只有当对话框被用户关闭以后,ShowDialog()才会返回,程序得以继续执行。
阻塞的效果:
1 方法卡在ShowDialog这一行,不往下执行 2 对话框窗口可以活动,后面的父窗口不可以活动3.对话框的属性
(外观)Text窗口标题
(窗口样式)MaximizeBox最大化按钮 (窗口样式) MinimizeBox最大化按钮 (窗口样式) ShowInTaskbar是否在任务栏显示 (布局) StartPosition窗口显示位置 (外观) FormBorderStyle边框设定/是否可以调整大小
4.对话框的返回
1如何关闭对话框
2如何取得对话框的输入取得用户输入
先判断用户是点了‘确定’还是‘取消’
再从对话框中取得用户的输入值DialogResult rc = dlg.ShowDialog();if(rc == DialogResult.OK){ string str = dlg.edit.Text;}
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WinForm基础22{ public partial class MyDialog : Form { public MyDialog() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { this.DialogResult = DialogResult.OK; } }}
using Newtonsoft.Json;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WinForm基础22{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { MyDialog dlg = new MyDialog(); DialogResult rc = dlg.ShowDialog(); if(rc == DialogResult.OK) { string str = dlg.textBox1.Text; MessageBox.Show(str); } dlg.Dispose(); } }}
设置DialogResult,有两层作用:
- 关闭对话框
- 设定返回值,即ShowDialog()返回的值
5.(练习)样式设定
实现:
1添加对话框StyleDialog- 添加控件,设置初始值
- 添加确定、取消按钮,设置DialogResult
2调用对话框
当用户点确定时,取得输入的值,后续处理。6.细节
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月13日 10时21分55秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
GRUB2
2021-05-14
微信JS-SDK DEMO页面和示例代码
2021-05-14
GridView的另外一种分页方式,可提高加载速度
2021-05-14
GridView自定义删除操作
2021-05-14
一张图搞定RPC框架核心原理
2021-05-14
Scala中的包
2021-05-14
他来了他来了,他带着云栖大会的免费门票走来了
2021-05-14
获取linux 主机cpu类型
2021-05-14
限流的算法有哪些?
2021-05-14
Android Studio updating indices 一直刷新和闪烁
2021-05-14
个人购买服务器问题?
2021-05-14
pwntools编写技巧
2021-05-14
How2Heap笔记(三)
2021-05-14
go--microSocket服务端 php客户端
2021-05-14
小程序提交新数据后如何返回上一页并刷新数据?
2021-05-14
qt c++实现的ai贪吃蛇吃满屏幕,超详细!(二)ai的具体实现
2021-05-14
linux 查看log日志相关命令
2021-05-14
IDEA 2019 安装 mybatis-plus插件
2021-05-14
div 实现光标悬停变成手型
2021-05-14