c#学习笔记(15)

c#学习第十五天

1.Directory类
Directory 文件夹 目录
创建文件夹
Directory.CreateDirectory(@“D:\B”);
Console.WriteLine(“创建成功!”);
Console.ReadKey();

        删除文件夹 空的文件夹  加true确定删除非空文件夹
        Directory.Delete(@"D:\B", true);
        Console.WriteLine("删除成功");
        Console.ReadKey();

        剪切文件夹
        Directory.Move(@"D:\B", @"D:\B\c");
        Console.WriteLine("剪切成功");
        Console.ReadKey();

        获得指定文件夹下所有文件的全路径 若要获得指定文件后缀的文件全路径,则在后面加上"*.后缀名"
        string[] path = Directory.GetFiles(@"C:\Intel\Logs", "*.jpg");
        for (int i = 0; i < path.Length; i++)
        {
            Console.WriteLine(path[i]);
        }
        Console.ReadKey();

        获得指定目录下的所有文件夹的全路径
        string[] path = Directory.GetDirectories(@"C:\Intel\Logs");
        for (int i = 0; i < path.Length; i++)
        {
            Console.WriteLine(path[i]);
        }
        Console.ReadKey();


        在一个目录下创建多个文件夹
        if (Directory.Exists(@"C:\Intel\Logs"))  注释:判断是否存在
        {
            for (int i = 0; i < 100; i++)
            {
                Directory.CreateDirectory(@"C:\Intel\Logs" + i);
            }
        }
        Console.WriteLine("创建完毕");
        Console.ReadKey();

2.WebBrowser浏览器控件
:提供托管的包装。 托管的包装便可以在 Windows 窗体客户端应用程序中显示网页。 你可以使用WebBrowser控件重复中你的应用程序或你的 Internet Explorer Web 浏览功能可以禁用默认 Internet 资源管理器功能和控件用作简单的 HTML 文档查看器。 你可以使用控件以将基于 DHTML 的用户界面元素添加到你的窗体和隐藏它们是否承载在事实WebBrowser控件。 这种方法,可以无缝组合与单个应用程序中的 Windows 窗体控件的 Web 控件。

Document 属性 :获取一个对象,提供对 HTML 文档对象模型 (DOM) 的当前网页的托管的访问。
DocumentCompleted事件:当 Web 页面完成加载时出现。
DocumentText 属性 :获取或设置 HTML 当前网页的内容。
DocumentTitle 属性 :获取当前网页的标题。
GoBack 方法: 导航至历史记录中的上一页。
GoForward 方法: 导航至历史记录中的下一页。
Navigate 方法:导航到指定的 URL。
Navigating事件:导航开始,启用要取消的操作之前发生。
ObjectForScripting 属性:获取或设置 Web 页上的脚本代码可以使用与你的应用程序进行通信的对象。
Print 方法:打印当前的 Web 页。
Refresh 方法:将重新加载当前的 Web 页。
Stop 方法:将暂停当前导航并停止动态页元素,如声音和动画。
Url 属性:获取或设置当前网页的 URL。 设置此属性导航到新 URL 的控件。

3.ComboBox下拉框控件
DropDownStyle属性:控制下拉框的外观样式

4.进程:Process
我们可以把计算机中每一个运行的应用程序都当作是一个进程。
而一个进程又是由多个线程组成的。

5.线程:Thread
单线程带来的问题:
5.1:让计算机“同时”做多件事情,节约时间。
5.2:多线程可以让一个程序“同时”处理多个事情。
5.3:后台运行程序,提高程序的运行效率,也不会使得主界面出现无响应的情况。
5.4:获得当前线程和当前进程。
前台线程:只有所有的前台线程都关闭才能完成程序的关闭。
后台线程:只要所有的前台线程结束,后台线程自动结束。

代码:
//创建一个线程去执行这个方法
Thread th = new Thread(Test);
//标记这个线程准备就绪了,可以随时被执行,具体什么时候执行这个线程,由cpu决定
//将线程设置为后台线程
th.IsBackground = true;
th.Start();

产生一个线程的4个步骤:
编写产生线程所要执行的方法。
引用System.Threading命名空间。
实例化Thread类,并传入一个指向线程所要运行方法的委托。(这时候这个线程以及产生,但是还没有运行)。
调用Thread实例的Start方法,标记该线程可以被CPU执行了,但具体的执行时间由CPU决定。

在.NET下,是不允许跨线程访问的。

代码:

//取消跨线程的访问
Control.CheckForillegalCrossThreadCalls = false;

清理所有正在使用资源
如果应该释放托管资源,则为true,否则为false
代码:
protected override void Dispose(bool disposing)
{
if(disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}

//当你点击关闭窗体的时候,判断线程是否为null
代码:
if(th!= null)

//结束这个线程
th.Abort();

Start()启动线程(告诉CPU我可以被执行了,具体什么时候执行,由CPU决定)
Abort()终止线程,终止完成之后不能再Start()。
Thread.Sleep(1)静态方法,可以使当前线程停止一段时间运行。
Name线程名
Thread.CurrentThread获得当前的线程引用

猜你喜欢

转载自blog.csdn.net/weixin_43135862/article/details/84678180