-
C# 编写多种窗口排列方式的MDIForm窗体
C# 实现MDIForm窗体功能,代码中实现了3个MDI子窗口,并以水平平铺、垂直平铺、层叠排列的方式实现多种子窗口的排列布局,其主要代码在form1.cs中,其它文件为生成子窗口的文件,关键代码如下:
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();//实例化Form2
frm2.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm2.Show();//使用Show方法打开窗体
Form3 frm3 = new Form3();//实例化Form3
frm3.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm3.Show();//使用Show方法打开窗体
Form4 frm4 = new Form4();//实例化Form4
frm4.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm4.Show();//使用Show方法打开窗体
}
private void 水平平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileHorizontal);//使用MdiLayout枚举实现水平平铺
}
private void 垂直平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileVertical);//使用MdiLayout枚举实现垂直平铺
}
private void 层叠排列ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);//使用MdiLayout枚举实现层叠排列
}
- 2022-03-07 15:00:14下载
- 积分:1
-
C# LockThread()锁定线程以实现线程同步
C# 使用LockThread()方法实现线程监视监控的例子,锁定线程以实现线程同步,实现方法比较简单,可参考以下的代码,完整的代码可在本网页下载:
static void Main(string[] args)
{
Program myProgram = new Program();//实例化类对象
myProgram.LockThread(); //调用锁定线程方法
Console.ReadLine();
}
void LockThread()
{
Monitor.Enter(this);//锁定当前线程
Console.WriteLine("锁定线程以实现线程同步");
Monitor.Exit(this); //释放当前线程
}
- 2022-02-20 05:30:05下载
- 积分:1
-
像打字游戏的C#打字练习软件
像打字游戏的C#打字练习软件,名字叫做“梦雨打字通”。指法练习,出现的字符,在倒计时3秒内会自动消失,若你没有按下键盘上对应的键,则就算打字失败了,这个可以测试你的打字速度,所说里面的大部分分功能借鉴了金山打字通的一些模式。
本软件在编写时,用到了工厂类、随机生产LetterClass、计时器类,每一个Letter在屏幕上的停留时间计时,keyDown事件类,设置 字符总数 正确总数 正确率,X方向的Tick事件等。
- 2022-08-04 11:03:56下载
- 积分:1
-
C# WPF 文字动态旋转动画
C# WPF 文字动态旋转动画,这个是动态的,文字以动画方式旋转360度,无缝旋转,WPF制作动画效果还是挺方便的,这个例子十分简单,文字的旋转也可变通为图片的旋转。运行效果图如下示。
- 2022-11-09 17:45:04下载
- 积分:1
-
C++版连连看代码VS2008
一个C++用VB2008编写的游戏程序,测试通过,非常适合初学者,还有成系列的学习视频。值得学习,值得学习。
- 2022-08-19 02:11:43下载
- 积分:1
-
C#演示用Brush填充Rectangle图形
C#画矩形,然后使用Brush填充Rectangle图形,单击按钮后会生成一个填充过的图形,需要创建Graphics对象,创建一个Brush对象,再使用Rectangle绘制一个矩形,然后使用Brush填充,实现这一过程,核心代码如下:
private void button1_Click(object sender, EventArgs e)
{
Graphics ghs = this.CreateGraphics();//创建Graphics对象
Brush mybs = new SolidBrush(Color.Red);//使用SolidBrush类创建一个Brush对象
Rectangle rt = new Rectangle(10, 10, 100, 100);//绘制一个矩形
ghs.FillRectangle(mybs, rt);//用Brush填充Rectangle
}
- 2022-07-06 17:10:54下载
- 积分:1
-
LED显示屏控制卡源码
T45DB041B的模拟SPI程序,验证过无问题! /********************************************************************************* * 函数原型:unsigned char SPI_ReadByte(void); * 名 称:SPI_ReadByte * 功 能:从AT45DB041B通过SPI_SO口读入1BYTE数据 * 入口参数:无 * 出口参数:返回读入的1BYTE数据 **********************************************************************************/ unsigned char SPI_ReadByte(void) { unsigned char i,rByte=0; for(i=0;i
- 2022-03-25 18:35:36下载
- 积分:1
-
C#多种方法去除重复项操作示例
C#多种方法去除重复项操作示例,完成的功能定义字段、定义属性、重写ToString()方法、Distinct避免重复操作、Union合并操作、Intersect交集操作、Except差集操作,每一种功能都使用Console.WriteLine向控制台输出测试信息,如示例图所示的运行效果,本例可学习了解Linq的字符串操作技巧。
- 2022-05-07 20:13:23下载
- 积分:1
-
C# 创建有参、无参数等多线程操作实例
C# 多线程操作实例,获取指定进程的进程详细信息、获取指定进程的模块详细信息、创建无参数的多线程应用程序、创建带参数的多线程应用程序、创建共享线程模拟资源共享、创建子线程更新主线程数据等,部分代码分享如下:
if (MyThread.ThreadState == ThreadState.Terminated)
MyData += "
当前状态:已完成执行并已退出";
if (MyThread.ThreadState == ThreadState.Transition)
MyData += "
当前状态:在可以执行前等待处理器之外的资源";
if (MyThread.ThreadState == ThreadState.Unknown)
MyData += "
当前状态:状态未知";
if (MyThread.ThreadState == ThreadState.Wait)
MyData += "
当前状态:正在等待外围操作完成或等待资源释放";
if (MyThread.WaitReason == ThreadWaitReason.EventPairHigh)
MyData += "
等待原因:线程正在等待事件对高";
if (MyThread.WaitReason == ThreadWaitReason.EventPairLow)
MyData += "
等待原因:线程正在等待事件对低";
if (MyThread.WaitReason == ThreadWaitReason.ExecutionDelay)
MyData += "
等待原因:线程执行延迟";
if (MyThread.WaitReason == ThreadWaitReason.Executive)
MyData += "
等待原因:线程正在等待计划程序";
if (MyThread.WaitReason == ThreadWaitReason.FreePage)
MyData += "
等待原因:线程正在等待可用的虚拟内存页";
if (MyThread.WaitReason == ThreadWaitReason.LpcReceive)
- 2022-04-18 07:37:09下载
- 积分:1
-
C# 复制当前屏幕上指定区域图像
C#复制当前屏幕上指定区域图像。运行效果如演示截图所示。最核心的两行代码如下所示:
private void button1_Click(object sender, EventArgs e)
{//复制当前屏幕上指定区域图像
Graphics g = this.pictureBox1.CreateGraphics();
g.CopyFromScreen(new Point(1, 1), new Point(0, 0),new Size(1201, 1201));
}
- 2022-02-03 00:21:26下载
- 积分:1