zoukankan      html  css  js  c++  java
  • 容器控件,对话框控件,流,路径的简单概念

    布局主要有2个属性:

    Anchor:锁定位置,相对于父级容器
    Dock:填充位置(上下左右,剩下全部)
    一般Dock是与容器控件配合使用


    容器控件:
    Panel:就是一个区域,类似于DIV,可以独立布局,还可以让其它控件及容器在它的内部再次布局

    FlowLayoutPanel:流式布局容器,内容会默认从左向右排列,如果宽度不够了,那么自动换行,就像html里的flow,可以用来做导航栏

    GroupBox:依然是容器,拥有Panel全部属性,比Panel多了个标题和边框样式

    TabControl:选项卡容器,点击一个选项出现一个单独的部分

    SplitContainer:二分区容器,就是两个panel,panel范围用户可以拖动,可以设置为横向(orientation),可以多个镶嵌

    TableLayoutPanel:表格容器,每个单元格里只能放置一个控件,要想方多个控件要在单元格里放一个panel.

    --------------------------------
    打印控件:
    PrintDocument:要打印的对象,非常重要,没有打印对象是不能进行打印和打印预览的,因为
    程序不知道你要打印什么东西,它只会去找这个要打印的对象
    你所要做的事情,就是将要打印的内容绘制到这个打印对象上去
    使用时要先引用命名空间using System.Drawing;
    private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
    {
    Font f=new Font("宋体",17);
    SolidBrush b=new SolidBrush(Color.Blue);
    e.Graphics.DrawString(textBox1.Text, f, b, 1, 1);//绘制字符串,字体,颜色,起始位置
    }

    PageSetupDialog:打印设置对话框,直接show不出来,需要一个pagesetupdialog对象,要先设置PageSetupDialog.Document属性
    private void 打印设置ToolStripMenuItem_Click(object sender, EventArgs e)
    {
    pageSetupDialog1.Document = printDocument1;
    pageSetupDialog1.ShowDialog();
    }


    PrintPreviewControl:打印预览控件,与打印预览对话框差不多,不如打印预览对话框好用
    PrintPreviewDialog:打印预览对话框
    private void 打印预览VToolStripMenuItem_Click(object sender, EventArgs e)
    {
    printPreviewDialog1.Document = printDocument1;
    printPreviewDialog1.ShowDialog();
    }
    会出现一个对话框,对话框大小可调,可以看到打印内容
    --------------------------------------------------------

    PrintDialog:打印对话框

    printPreviewDialog1.Document = printDocument1;
    DialogResult dr = printDialog1.ShowDialog();

    if (dr == DialogResult.OK)//如果用户点击的是确定按钮,那么执行打印
    {
    printDocument1.Print();
    }

    DialogResult是一个可被实例化的枚举类,用来接收用户在对话框中的操作

    对话框控件:
    colorDialog - 颜色选择对话框
    首先实例化一个 DialogResult对象来接收。
    DialogResult dr = colorDialog1.ShowDialog();//让对话框显示出来
    if (dr == DialogResult.OK)
    {
    textBox1.ForeColor = colorDialog1.Color;
    }

    folderBrowserDialog - 文件路径选择对话框
    folderBrowserDialog1.ShowDialog();
    toolStripSeparator4.Text = folderBrowserDialog1.SelectedPath;
    只会显示文件夹,文件夹里的内容不显示

    fontDialog - 字体选择对话框
    fontDialog1.ShowDialog();//显示对话框
    textBox1.Font = fontDialog1.Font;
    textBox1.ForeColor = fontDialog1.Color;

    openFileDialog - 打开文件对话框
    openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";//可选择的文件的格式
    openFileDialog1.Filter = "文本文档|*.txt";
    DialogResult dr= openFileDialog1.ShowDialog();
    if (dr == DialogResult.OK)
    {
    toolStripSeparator5.Text = openFileDialog1.FileName;
    StreamReader sr = new StreamReader(openFileDialog1.FileName, System.Text.Encoding.Default);//。这里实例化一个读取流,前边参数是路径后面参数是本机默认编码,如果不设置可能出现乱码。
    textBox1.Text= sr.ReadToEnd();
    sr.Close();//跟数据库一样一次只能打开一个所以用完要关闭。

    }

    saveFileDialog - 保存文件对话框
    string path = "";//定义一个变量记录保存位置
    private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
    {
    if (path == "")//第一次保存该文档
    {


    saveFileDialog1.FileName = "新建文本文档.txt";//设置默认保存文件名
    DialogResult dr = saveFileDialog1.ShowDialog();//显示对话框
    if (dr == DialogResult.OK)
    {
    toolStripSeparator3.Text = saveFileDialog1.FileName;
    StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//实例化一个写入流
    sw.Write(textBox1.Text);
    sw.Close();
    path = saveFileDialog1.FileName;
    }
    }
    else
    {
    StreamWriter sw = new StreamWriter(path);
    sw.Write(textBox1.Text);
    sw.Close();
    MessageBox.Show("保存成功");
    }
    }


    绝对路径:带盘符的 G:720...输入进去是可以直接找到该路径下的文件的

    相对路径:根据你当前程序的目录下,找到某个文件夹 /css/css1.css

    流:IO
    就像水管里的水,也就是数据,以10101的形式传输。
    StreamReader - 读取流 sr.ReadToEnd();
    StreamWriter - 输出流 sw.Write(要输出的内容);

  • 相关阅读:
    poj 2187 Beauty Contest(旋转卡壳)
    poj 2540 Hotter Colder(极角计算半平面交)
    poj 1279 Art Gallery(利用极角计算半平面交)
    poj 3384 Feng Shui(半平面交的联机算法)
    poj 1151 Atlantis(矩形面积并)
    zoj 1659 Mobile Phone Coverage(矩形面积并)
    uva 10213 How Many Pieces of Land (欧拉公式计算多面体)
    uva 190 Circle Through Three Points(三点求外心)
    zoj 1280 Intersecting Lines(两直线交点)
    poj 1041 John's trip(欧拉回路)
  • 原文地址:https://www.cnblogs.com/lanrenqilanming/p/5904014.html
Copyright © 2011-2022 走看看