Advertisement
Guest User

Untitled

a guest
Apr 1st, 2018
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.34 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. namespace HamburgerApp
  12. {
  13.     public partial class HamburgerForm : Form
  14.     {
  15.         bool menu_is_opened = false;
  16.         int menu_anim_ms = 150;
  17.  
  18.         public HamburgerForm()
  19.         {
  20.             InitializeComponent();
  21.         }
  22.  
  23.         public async Task MenuOpen()
  24.         {
  25.             int panewidth = 300;
  26.             int panecurrwidth = MenuPane.Width;
  27.  
  28.             for (int i = panecurrwidth; i < panewidth; i++)
  29.             {
  30.                 MenuPane.Width = i;
  31.                 System.Threading.Thread.Sleep(menu_anim_ms / (panecurrwidth - panewidth));
  32.             }
  33.  
  34.             //MenuPane.Width = 300;
  35.             menu_is_opened = true;
  36.         }
  37.  
  38.         public async Task MenuClose()
  39.         {
  40.             int panewidth = 42;
  41.             int panecurrwidth = MenuPane.Width;
  42.  
  43.             for (int i = panecurrwidth; i> panewidth; i--)
  44.             {
  45.                 MenuPane.Width = i;
  46.                 System.Threading.Thread.Sleep(menu_anim_ms / (panecurrwidth- panewidth));
  47.             }
  48.  
  49.             //MenuPane.Width = 42;
  50.             menu_is_opened = false;
  51.         }
  52.  
  53.         private async void MenuButton_Click(object sender, EventArgs e)
  54.         {
  55.             if (menu_is_opened) await MenuClose();
  56.             else await MenuOpen();
  57.         }
  58.  
  59.         private async void MenuPane_MouseLeave(object sender, EventArgs e)
  60.         {
  61.             if (menu_is_opened) await MenuClose();
  62.         }
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement