最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#編程實(shí)現(xiàn)簡易圖片瀏覽器的方法

 更新時間:2015年11月28日 12:41:09   作者:期待秋天的葉  
這篇文章主要介紹了C#編程實(shí)現(xiàn)簡易圖片瀏覽器的方法,涉及C#基于WinForm操作圖片實(shí)現(xiàn)預(yù)覽功能的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實(shí)例講述了C#編程實(shí)現(xiàn)簡易圖片瀏覽器的方法。分享給大家供大家參考,具體如下:

首先需要加上命名空間 using system.io;

拖一個PICTUREBOX,兩個TEXTBOX

string fold = "";//用來存不包含文件后綴名的路徑 
string[] files;//用來存當(dāng)前所有統(tǒng)一后綴文件的總路徑 
int pos=0;//用于圖片切換 
private void button1_Click(object sender, EventArgs e) 
{ 
   OpenFileDialog of = new OpenFileDialog();//打開“打開文件”對話框 
   of.Title = "打開圖像文件";//命名 
   of.Filter = "圖像文件|*.bmp;*.jpg";//選擇文件 
   if (of.ShowDialog() == DialogResult.OK && of.FileName != "") 
   { 
     int p = of.FileName.LastIndexOf(@"\");//得到斜杠的索引 
     fold = of.FileName.Substring(0, p + 1);//得到除了文件后綴的(包含斜杠)的路徑 
     FileInfo fi = new FileInfo(of.FileName);//一種io下的實(shí)例方法 
     string ext = fi.Extension;//利用上面的方法取得擴(kuò)展名 
     textBox1.Text = of.FileName;//總路徑 
     label1.Text = fold;//不含后綴,這兩行代碼完全是給讀者看的 
     Image image = Image.FromFile(of.FileName);//實(shí)例化一個圖片,該圖片是你選擇的那張圖片 
     pictureBox1.Image = image;//將該圖片放入空間內(nèi) 
     files = Directory.GetFiles(fold, "*" + ext);//將所有當(dāng)下文件夾下的圖片文件的全路徑放在該數(shù)組內(nèi) 
   } 
} 
private void button2_Click(object sender, EventArgs e) 
{  //下一張圖片 
   pos++; 
   if (pos >=files.Length) 
   { pos = 0; } 
   string file = files[pos].ToString(); 
   Image image = Image.FromFile(file); 
   pictureBox1.Image = image; 
} 
private void button3_Click(object sender, EventArgs e) 
{ //上一張圖片 
   pos--; 
   if (pos < 0) 
   { pos = files.Length - 1; } 
   string file = files[pos].ToString(); 
   Image image = Image.FromFile(file); 
   pictureBox1.Image = image; 
}

效果圖如下:

問題總結(jié)如下:

1. 所有的文件名字都存在數(shù)組files里面,按說files[ ]里的元素就固定了??墒?,無論先打開哪一張圖片,點(diǎn)擊下一張后,都可以正確的讀出下一張(問題是POS的初值是0,無論打開哪張,下一張的執(zhí)行命令都會搜索到files[1],可每次打開的圖片不同啊,用相同的files[1]怎么還能搜索到自己對應(yīng)的下一張呢,這個數(shù)組到底是咋存的)

解決方案:其實(shí)每次的files[1]是不同的,因?yàn)榈谋热缒阆却蜷_第二張圖片,那么第一,二,三,四張圖片對應(yīng)的數(shù)組元素應(yīng)該是files[3],files[0],files[1],files[2];如果先打開第一張圖片,那么files[0]應(yīng)該默認(rèn)的是第一張圖片,files[1]自然就是第二張了(只有這樣才能說的通)。

2. 如上圖,圖片只顯示了一部分,并沒用顯示全,可能是由于控件太小了。
解決方案:為了讓圖片的顯示與PICTUREBOX相符,在button1里加如下語句:

復(fù)制代碼 代碼如下:
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;

此外還有個小BUG,如果一共有4張圖片,先打開第四張后點(diǎn)擊下一張,會出現(xiàn)第二張。原因是POS的初始值是0,再BUTTON2里加1也不過是1,所以選擇第四張圖片的時候跳轉(zhuǎn)到files[1]也就是第二個圖片,這里不知道怎么修改了,有大牛看到了幫忙修復(fù)下BUG。

希望本文所述對大家C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 深入C#中g(shù)et與set的詳解

    深入C#中g(shù)et與set的詳解

    本篇文章是對C#中的get與set進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • C#瀏覽器提示跨域問題解決方案

    C#瀏覽器提示跨域問題解決方案

    這篇文章主要介紹了C#瀏覽器提示跨域問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • WinForm調(diào)用jar包的方法分析

    WinForm調(diào)用jar包的方法分析

    這篇文章主要介紹了WinForm調(diào)用jar包的方法,結(jié)合實(shí)例形式分析了WinForm調(diào)用jar包的原理、實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-05-05
  • C#隱藏主窗口的方法小結(jié)

    C#隱藏主窗口的方法小結(jié)

    這篇文章主要介紹了C#隱藏主窗口的方法,列舉了C#隱藏窗口的三種常用方法,涉及C#窗體操作的常用技巧,需要的朋友可以參考下
    2016-03-03
  • C#使用JsonConvert全面解析JSON

    C#使用JsonConvert全面解析JSON

    這篇文章主要介紹了C#使用JsonConvert全面解析JSON,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 輕松學(xué)習(xí)C#的結(jié)構(gòu)和類

    輕松學(xué)習(xí)C#的結(jié)構(gòu)和類

    輕松學(xué)習(xí)C#的結(jié)構(gòu)和類,對C#的結(jié)構(gòu)和類感興趣的朋友可以參考本篇文章,幫助大家更靈活的運(yùn)用C#的結(jié)構(gòu)和類
    2015-11-11
  • 解決C#全屏幕截圖的實(shí)現(xiàn)方法

    解決C#全屏幕截圖的實(shí)現(xiàn)方法

    本篇文章是對在C#中實(shí)現(xiàn)全屏幕截圖的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • timespan使用方法詳解

    timespan使用方法詳解

    TimeSpan是用來表示一個時間段的實(shí)例,兩個時間的差可以構(gòu)成一個TimeSpan實(shí)例,現(xiàn)在就來介紹一下使用方法
    2014-04-04
  • C#中Timer使用及解決重入問題

    C#中Timer使用及解決重入問題

    本文主要介紹了C#中Timer使用及解決重入問題的相關(guān)知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • C#對多個集合和數(shù)組的操作方法(合并,去重,判斷)

    C#對多個集合和數(shù)組的操作方法(合并,去重,判斷)

    下面小編就為大家?guī)硪黄狢#對多個集合和數(shù)組的操作方法(合并,去重,判斷)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12

最新評論

柘城县| 陕西省| 洛扎县| 文登市| 浮梁县| 墨竹工卡县| 台中县| 江永县| 万年县| 崇明县| 苍梧县| 平凉市| 普格县| 西青区| 五河县| 厦门市| 垫江县| 陇川县| 南郑县| 文山县| 金昌市| 郁南县| 商水县| 怀远县| 奈曼旗| 台北县| 澳门| 揭阳市| 仁布县| 自治县| 郸城县| 铜鼓县| 巨野县| 边坝县| 东宁县| 万州区| 广宗县| 民勤县| 桑植县| 奎屯市| 来宾市|