亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于C#實現(xiàn)的仿windows左側(cè)伸縮菜單效果

 更新時間:2014年08月04日 09:17:11   投稿:shichen2014  
這篇文章主要介紹了基于C#實現(xiàn)的仿windows左側(cè)伸縮菜單效果,比較實用的功能,需要的朋友可以參考下

本文所述為基于C#實現(xiàn)的折疊菜單,風格仿照Windows打開我的電腦后左側(cè)的伸縮菜單效果,并且同樣是藍色的效果,看著和windows的效果一樣漂亮,可以實現(xiàn)折疊、展開等功能。這在學習C#界面編程的時候能用上,其主要實現(xiàn)代碼如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace LikesXP
{
  public partial class Frm_Main : Form
  {
    public Frm_Main()
    {
      InitializeComponent();
    }
    private static Panel Var_Panel = new Panel();//創(chuàng)建靜態(tài)字段
    private static PictureBox Var_Pict = //創(chuàng)建靜態(tài)字段
      new PictureBox();
    private static int Var_i = 0;//創(chuàng)建靜態(tài)字段
    private Font Var_Font = new Font("宋體", 9); //創(chuàng)建字體字段
    private void pictureBox_1_Click(object sender, EventArgs e)
    {
      Var_i = Convert.ToInt16((//得到控件中的數(shù)據(jù)
        (PictureBox)sender).Tag.ToString());
      switch (Var_i)
      {
        case 1:
          {
            Var_Panel = panel_Gut_1;//得到面板對象引用
            //Var_Pict = pictureBox_1;//得到PictureBox對象引用
            break;
          }
        case 2:
          {
            Var_Panel = panel_Gut_2;//得到面板對象引用
            Var_Pict = pictureBox_2;//得到PictureBox對象引用
            break;
          }
        case 3:
          {
            Var_Panel = panel_Gut_3;//得到面板對象引用
            Var_Pict = pictureBox_3;//得到PictureBox對象引用
            break;
          }
      }
      if (Convert.ToInt16(Var_Panel.Tag.ToString()) == 0 || Convert.ToInt16(Var_Panel.Tag.ToString()) == 2)
      {
        Var_Panel.Tag = 1;//設(shè)置為隱藏標識
        Var_Pict.Image = Properties.Resources.朝下按鈕;//設(shè)置圖像屬性
        Var_Panel.Visible = false;//隱藏面板
      }
      else
      {
        if (Convert.ToInt16(Var_Panel.Tag.ToString()) == 1)
        {
          Var_Panel.Tag = 2;//設(shè)置為顯示標識
          Var_Pict.Image = Properties.Resources.朝上按鈕;//設(shè)置圖像屬性
          Var_Panel.Visible = true;//顯示面板
        }
      }
    }
    private void Form1_Load(object sender, EventArgs e)
    {
      //pictureBox_1.Image = Properties.Resources.朝上按鈕;//設(shè)置圖像信息
      pictureBox_2.Image = Properties.Resources.朝上按鈕;//設(shè)置圖像信息
      pictureBox_3.Image = Properties.Resources.朝上按鈕;//設(shè)置圖像信息
      Var_Font = label_1.Font;//得到字體對象
    }
    private void label_1_MouseEnter(object sender, EventArgs e)
    {
      ((Label)sender).ForeColor = Color.Gray;//設(shè)置控件文字字顏色
      ((Label)sender).Font = //設(shè)置控件字體
        new Font(Var_Font, Var_Font.Style | FontStyle.Underline);
    }
    private void label_1_MouseLeave(object sender, EventArgs e)
    {
      ((Label)sender).ForeColor = Color.Black;//設(shè)置控件文字顏色
      ((Label)sender).Font = //設(shè)置控件字體
        new Font(Var_Font, Var_Font.Style);
    }
    private void pictureBox1_Click(object sender, EventArgs e)
    {
      if (Convert.ToInt16(panel1.Tag.ToString()) == 1)
      {
        timer1.Start();
        Convert.ToDateTime("").ToShortDateString();
        // pictureBox1.Image = Properties.Resources.朝下按鈕;//設(shè)置圖像屬性
        //panel1.Visible = false;//隱藏面板
      }
      else
      {
        if (Convert.ToInt16(panel1.Tag.ToString()) == 0)
        {
          timer1.Start();
          //panel1.Tag = 1;//設(shè)置為顯示標識
          //pictureBox1.Image = Properties.Resources.朝上按鈕;//設(shè)置圖像屬性
          //panel1.Visible = true;//顯示面板
        }
      }
    }
    private void timer1_Tick(object sender, EventArgs e)
    {
      long longWidth = panel1.Width;
      //如果panel目前是隱藏的
      if (Convert.ToInt16(panel1.Tag.ToString()) == 0)
      {
        if (longWidth == 200)
        {
          timer1.Enabled = false;
          panel1.Tag = 1;//設(shè)置為顯示標識
        }
        else
        {
          panel1.Width += 10;
        }
      }
      //如果panel目前是顯示的
      if (Convert.ToInt16(panel1.Tag.ToString()) == 1)
      {
        if (longWidth == 0)
        {
          timer1.Enabled = false;
          panel1.Tag = 0;//設(shè)置為隱藏標識
        }
        else
        {
          panel1.Width -= 10;
        }
      }
    }
  }
}

這里只展示了主要的功能代碼,其他的實現(xiàn)細節(jié)讀者可以自己進一步完善。

相關(guān)文章

  • string與stringbuilder兩者的區(qū)別

    string與stringbuilder兩者的區(qū)別

    今天小編就為大家分享一篇關(guān)于string與stringbuilder兩者的區(qū)別,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • C#操作INI配置文件示例詳解

    C#操作INI配置文件示例詳解

    這篇文章主要為大家詳細介紹了C#操作INI配置文件示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Unity UI組件ScrollRect實現(xiàn)無限滾動條

    Unity UI組件ScrollRect實現(xiàn)無限滾動條

    這篇文章主要為大家詳細介紹了Unity UI組件ScrollRect實現(xiàn)無限滾動條,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 無焦點獲取條碼槍返回值示例

    無焦點獲取條碼槍返回值示例

    這篇文章主要介紹了使用C#獲取條碼槍的返回值,實現(xiàn)了獲取條碼信息、條碼是否有效、掃描時間、掃描碼等參數(shù)
    2014-01-01
  • Unity實現(xiàn)跑馬燈效果的示例代碼

    Unity實現(xiàn)跑馬燈效果的示例代碼

    這篇文章主要為大家詳細介紹了如何利用Unity實現(xiàn)跑馬燈效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • c#對象反序列化與對象序列化示例詳解

    c#對象反序列化與對象序列化示例詳解

    這篇文章主要介紹了c#對象反序列化與對象序列化示例,需要的朋友可以參考下
    2014-03-03
  • C# 獲取 PC 序列號的方法示例

    C# 獲取 PC 序列號的方法示例

    這篇文章主要介紹了C# 獲取 PC 序列號的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • C#實現(xiàn)FTP上傳文件的方法

    C#實現(xiàn)FTP上傳文件的方法

    這篇文章介紹了C#實現(xiàn)FTP上傳文件的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#進制之間的相互轉(zhuǎn)換詳解

    C#進制之間的相互轉(zhuǎn)換詳解

    關(guān)于進制之間的相互轉(zhuǎn)換,很多人覺得進制較多,所以轉(zhuǎn)換起來比較麻煩,筆者今天在這里說下,進制雖然較多,但其實轉(zhuǎn)換的算法幾近相同
    2013-11-11
  • C#實現(xiàn)視頻的批量剪輯功能

    C#實現(xiàn)視頻的批量剪輯功能

    這篇文章主要介紹了C#實現(xiàn)視頻的批量剪輯功能,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03

最新評論