此项目需求是针对.wav格式音频进行操作,转换成相应的.mp3格式的音频文件,对音频进行切割,最后以需求的形式输出,此篇会回顾运用到的一些知识点。
1.MDI子窗口的建立:
首先一个窗体能够创建多个MDI窗体,应当将IsMDIContainer属性设为true;以下为效果图:

控制窗体切换的是一个DotNetBar.TabStrip控件,style属性为Office2007Document,TabLayOutType:FixedWithNavigationBox
创建窗体的代码如下:
01 | /// <summary> |
02 | /// 创建MDI子窗体类 |
03 | /// </summary> |
04 | classCreateMDIWindow |
05 | { |
06 | /// <summary> |
07 | /// 当前程序的主窗体对象 |
08 | /// </summary> |
09 | publicstaticForm MainForm {get;set; } |
10 | |
11 | /// <summary> |
12 | /// 创建子窗口 |
13 | /// </summary> |
14 | /// |
15 | <typeparam name="T"> 窗口类型 |
16 | </typeparam> |
17 | publicstaticvoidCreateChildWindow |
18 | <t> () where T : Form,new() |
19 | // where 子句还可以包括构造函数约束。 可以使用 new 运算符创建类型参数的实例;但类型参数为此必须受构造函数约束 |
20 | // new() 的约束。 new() 约束可以让编译器知道:提供的任何类型参数都必须具有可访问的无参数(或默认)构造函数。 |
21 | { |
22 | T form =null; |
23 | |
24 | var childForms = MainForm.MdiChildren; |
25 | //遍历窗体 |
26 | foreach(Form finchildForms) |
27 | { |
28 | if(fisT) |
29 | { |
30 | form = fasT; |
31 | break; |
32 | } |
33 | } |
34 | //如果没有,则创建 |
35 | if(form ==null) |
36 | { |
37 | //新建窗体 |
38 | form =newT(); |
39 | //设定窗体的图标 |
40 | form.Icon = System.Drawing.Icon.FromHandle(PRoperties.Resources.MainIcon.GetHicon()); |
|
学习交流
热门图片
猜你喜欢的新闻
新闻热点 2019-10-23 09:17:05
2019-10-21 09:20:02
2019-10-21 09:00:12
2019-09-26 08:57:12
2019-09-25 08:46:36
2019-09-25 08:15:43
疑难解答 |