winform 对话框、打印框
生活随笔
收集整理的這篇文章主要介紹了
winform 对话框、打印框
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
winform 對(duì)話框控件
1、打開文件對(duì)話框(OpenFileDialog)?
2、保存文件對(duì)話框(SaveFileDialog)?
3、字體對(duì)話框(FontDialog)?
4、顏色對(duì)話框(ColorDialog)
5、打開文件夾對(duì)話框?FolderBrowserDialog
public Form1(){InitializeComponent();}//dialog 對(duì)話,會(huì)話,對(duì)話框//ShowDialog 將窗體顯示為具有指定所有者模式的對(duì)話框//DialogResult 指定標(biāo)識(shí)符以指示對(duì)話框的返回值//floder 文件夾,文書夾//Browser 瀏覽器//file 文件;檔案;文件夾//stream 流媒體類private void 字體顏色ToolStripMenuItem_Click(object sender, EventArgs e){DialogResult dr= colorDialog1.ShowDialog();//顯示為調(diào)色板對(duì)話框if (dr == DialogResult.OK)//如果用戶點(diǎn)擊的是確定才賦值 {textBox1.ForeColor = colorDialog1.Color;//textbox1中的前景色 }}private void 選擇文件夾ToolStripMenuItem_Click(object sender, EventArgs e){folderBrowserDialog1.ShowDialog();//顯示為文件夾瀏覽器樣式textBox1.Text = folderBrowserDialog1.SelectedPath;//將選擇路徑里的內(nèi)容顯示在文本框//絕對(duì)路徑,相對(duì)路徑 }private void 字體設(shè)置ToolStripMenuItem_Click(object sender, EventArgs e){fontDialog1.ShowColor = true;//開啟字體設(shè)置對(duì)話框里的顏色fontDialog1.ShowDialog();//開啟字體設(shè)置對(duì)話框textBox1.Font = fontDialog1.Font;//文本框字體設(shè)置引用字體設(shè)置textBox1.ForeColor = fontDialog1.Color;//文本框顏色引用字體設(shè)置對(duì)話框里的顏色 }private string lujing;//定義一個(gè)變量lujing來存放文件存放的路徑private void 保存SToolStripMenuItem_Click(object sender, EventArgs e){if (lujing == "")//如果沒有該保存路徑 {saveFileDialog1.FileName = "新建文件.txt";//設(shè)置保存名稱及后綴文件類型DialogResult dr = saveFileDialog1.ShowDialog();//設(shè)置一個(gè)對(duì)話框變量dr接收顯示保存對(duì)話框的內(nèi)容if (dr == DialogResult.OK)//如果用戶點(diǎn)擊確定 {//lujing = saveFileDialog1.FileName;//定義一個(gè)變量來接收保存文件的名稱StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//開啟流通道sw.Write(textBox1.Text);//保存編輯文檔sw.Close();//關(guān)閉流通道 }}else{StreamWriter sw = new StreamWriter(lujing);//開啟流通道sw.Write(textBox1.Text);//保存編輯文檔sw.Close();//關(guān)閉流通道 }}private void 新建NToolStripMenuItem_Click(object sender, EventArgs e){if(this.textBox1.Text.Length>0)//如果打開記事本中有輸入得東西 {DialogResult dr = MessageBox.Show("是否進(jìn)行保存","保存對(duì)話框",MessageBoxButtons.YesNo);//彈出是否保存的對(duì)話框if(dr==DialogResult.OK)//用戶點(diǎn)擊確定 {if (lujing == "")//如果沒有該保存路徑 {saveFileDialog1.FileName = "新建文件.txt";//設(shè)置保存名稱及后綴文件類型DialogResult dr1 = saveFileDialog1.ShowDialog();//設(shè)置一個(gè)對(duì)話框變量dr接收顯示保存對(duì)話框的內(nèi)容if (dr1 == DialogResult.OK)//如果用戶點(diǎn)擊確定 {//lujing = saveFileDialog1.FileName;//定義一個(gè)變量來接收保存文件的名稱StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//開啟流通道sw.Write(textBox1.Text);//保存編輯文檔sw.Close();//關(guān)閉流通道 }}else{StreamWriter sw = new StreamWriter(lujing);//開啟流通道sw.Write(textBox1.Text);//保存編輯文檔sw.Close();//關(guān)閉流通道 }}}lujing = null;//執(zhí)行完新建將路徑變?yōu)榭?因?yàn)槭切陆ǖ奈谋臼遣粫?huì)有路徑的.this.textBox1.Text = ""; //將文本框清空 }private void 打開OToolStripMenuItem_Click(object sender, EventArgs e){openFileDialog1.Filter = "文本文件|*.txt|所有文件|*.*";//篩選打開文件類型DialogResult dr = openFileDialog1.ShowDialog();//設(shè)置一個(gè)對(duì)話框變量接收if (dr == DialogResult.OK)//點(diǎn)擊確定按鈕 {lujing = openFileDialog1.FileName;//將文件路徑的值賦給lujing這個(gè)變量StreamReader sr = new StreamReader(openFileDialog1.FileName,UnicodeEncoding.GetEncoding("GB2312"));//初始化讀取流媒體類,并將打開的文件名稱,及當(dāng)前編碼形式//相當(dāng)于用水管連接兩個(gè)水龍頭,打開開關(guān)數(shù)據(jù)進(jìn)行讀寫操作textBox1.Text = sr.ReadToEnd();sr.Close();}//第二種方法//OpenFileDialog ofd = new OpenFileDialog();//初始化打開文件夾這個(gè)類,并定義一個(gè)變量ofd//ofd.Title = "打開";//ofd.Filter = "文本文件|*.txt|所有文件|*.*";//設(shè)置打開文件類型對(duì)話框中文件類型,文本文件txt或者所有文件//if (ofd.ShowDialog() == DialogResult.OK)//如果用戶點(diǎn)擊打開文件對(duì)話框//{// lujing = saveFileDialog1.FileName;// FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);// //調(diào)用以文件為主的stream類,既支持同步操作又支持異步操作。將開啟的權(quán)限賦給變量fs// //ofd.FileName 獲取文件名稱及路徑// //FileMode.Open 打開選定文件// //FileAccess.Read 設(shè)置文件操作為讀取// //FileShare.Read 允許隨后打開文件的讀取// StreamReader sr = new StreamReader(fs, Encoding.Default);//讀取流媒體初始化,將fs的值及當(dāng)前字符編碼賦值給sr// textBox1.Text = sr.ReadToEnd();//用TextBox1接收讀取到的內(nèi)容// sr.Close();//關(guān)閉讀取的流媒體通道// sr.Close();//關(guān)閉以文件操作為主的流媒體通道//} }private void 另存為AToolStripMenuItem_Click(object sender, EventArgs e){saveFileDialog1.FileName = "新建為文件.txt";//設(shè)置保存名稱及后綴文件類型 saveFileDialog1.ShowDialog();StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//開啟流通道sw.Write(textBox1.Text);//保存編輯文檔sw.Close();//關(guān)閉流通道} View Codewinform 打印控件
printDocument 設(shè)置打印對(duì)象的各項(xiàng)初始屬性,需要首先設(shè)置,面向?qū)ο蟮牟僮?/p>
打印控件分三步
1、打印頁面設(shè)置?pageSetupDialog
2、打印預(yù)覽?printPreviewControl ?打印預(yù)覽控件,不經(jīng)常用
? ? ? ? ? ? ? ? ???printPreviewDialog ?打印預(yù)覽對(duì)話框,常用
3、打印 ? ? ??printDialog
private void 頁面設(shè)置ToolStripMenuItem_Click(object sender, EventArgs e){pageSetupDialog1.Document = printDocument1;//將打印設(shè)置的指向打印對(duì)象1pageSetupDialog1.ShowDialog();//彈出打印設(shè)置對(duì)話框 }private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e){//首先要設(shè)置打印對(duì)象,類似于畫板Font f=new Font("宋體",14);//設(shè)置字體Brush b=new SolidBrush(Color.Black);//設(shè)置畫刷樣式PointF p = new PointF(10,10);//定義坐標(biāo)點(diǎn)e.Graphics.DrawString(textBox1.Text,f,b,p);//設(shè)置繪畫參數(shù),要繪制的字符串,字體,格式刷,坐標(biāo)//System.Drawing.Printing 命名空間提供與打印相關(guān)的服務(wù)。//PrintPageEventArgs為 PrintPage 事件提供數(shù)據(jù)。//Graphics 圖形,圖形,顯卡//DrawString 繪制字符串形式 }private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e){}private void 打印預(yù)覽VToolStripMenuItem_Click(object sender, EventArgs e){//printPreviewControl1.Document = printDocument1;//打印預(yù)覽控件printPreviewDialog1.Document = printDocument1;//打印對(duì)話框 printPreviewDialog1.ShowDialog();}private void 打印PToolStripMenuItem_Click(object sender, EventArgs e){printDialog1.Document = printDocument1;//指向打印內(nèi)容printDialog1.ShowDialog();//顯示打印對(duì)話框} View Code?
轉(zhuǎn)載于:https://www.cnblogs.com/shadow-wolf/p/6159618.html
總結(jié)
以上是生活随笔為你收集整理的winform 对话框、打印框的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Sprint会议记录(第五组)
- 下一篇: 运动框架实现思路(js)