コード例 #1
0
        public void FlatButtonAppearanceBorderColor()
        {
            Button B1 = new Button();
            FlatButtonAppearance flatApp = B1.FlatAppearance;

            flatApp.BorderColor = Color.Transparent;
        }
コード例 #2
0
        public void FlatButtonAppearanceExceptionTest()
        {
            Button B1 = new Button();
            FlatButtonAppearance flatApp = B1.FlatAppearance;

            flatApp.BorderSize = -1;
        }
コード例 #3
0
 /// <summary>
 /// 設定
 /// </summary>
 /// <param name="flatButtonAppearance"></param>
 public void Set(FlatButtonAppearance flatButtonAppearance)
 {
     this.BorderColor        = flatButtonAppearance.BorderColor;
     this.BorderSize         = flatButtonAppearance.BorderSize;
     this.CheckedBackColor   = flatButtonAppearance.CheckedBackColor;
     this.MouseDownBackColor = flatButtonAppearance.MouseDownBackColor;
     this.MouseOverBackColor = flatButtonAppearance.MouseOverBackColor;
 }
コード例 #4
0
        public static void ApplyStyle(this ButtonBase button)
        {
            button.BackColor = Color.Transparent;
            button.FlatStyle = FlatStyle.Flat;
            button.UseVisualStyleBackColor = true;
            FlatButtonAppearance appearance = button.FlatAppearance;

            appearance.BorderSize         = 0;
            appearance.BorderColor        = Color.Empty;
            appearance.CheckedBackColor   = Color.Empty;
            appearance.MouseDownBackColor = Color.Empty;
            appearance.MouseOverBackColor = Color.Empty;
        }
コード例 #5
0
        public void FlatButtonAppearanceTest()
        {
            Button B1 = new Button();
            FlatButtonAppearance flatApp = B1.FlatAppearance;

            Assert.AreEqual(Color.Empty, flatApp.BorderColor, "#A1");
            Assert.AreEqual(1, flatApp.BorderSize, "#A2");
            Assert.AreEqual(Color.Empty, flatApp.CheckedBackColor, "#A3");
            Assert.AreEqual(Color.Empty, flatApp.MouseDownBackColor, "#A4");
            Assert.AreEqual(Color.Empty, flatApp.MouseOverBackColor, "#A5");

            flatApp.BorderColor = Color.Blue;
            Assert.AreEqual(Color.Blue, flatApp.BorderColor, "#B1");
            flatApp.BorderSize = 10;
            Assert.AreEqual(10, flatApp.BorderSize, "#B2");
            flatApp.CheckedBackColor = Color.Blue;
            Assert.AreEqual(Color.Blue, flatApp.CheckedBackColor, "#B3");
            flatApp.MouseDownBackColor = Color.Blue;
            Assert.AreEqual(Color.Blue, flatApp.MouseDownBackColor, "#B4");
            flatApp.MouseOverBackColor = Color.Blue;
            Assert.AreEqual(Color.Blue, flatApp.MouseOverBackColor, "#B5");
        }
コード例 #6
0
    private void Update()
    {
        FlatButtonAppearance appearance;

        switch (CurrentState)
        {
        case FlatButtonState.Unselected:
            appearance = UnselectedAppearance;
            break;

        case FlatButtonState.Selected:
            appearance = SelectedAppearance;
            break;

        case FlatButtonState.Hover:
            appearance = HoverAppearance;
            break;

        case FlatButtonState.Disabled:
            appearance = DisabledAppearance;
            break;

        default:
            appearance = new FlatButtonAppearance();
            break;
        }

        Fill.color          = Color.Lerp(Fill.color, appearance.FillColor, StateDamping * Time.deltaTime);
        Outline.color       = Color.Lerp(Outline.color, appearance.OutlineColor, StateDamping * Time.deltaTime);
        _currentPadding     = Mathf.Lerp(_currentPadding, appearance.LayoutPadding, StateDamping * Time.deltaTime);
        LabelLayout.padding = new RectOffset
        {
            bottom = _defaultPadding.bottom,
            top    = _defaultPadding.top,
            left   = (int)_currentPadding,
            right  = (int)_currentPadding
        };
    }
コード例 #7
0
ファイル: FormMain.cs プロジェクト: JedBurke/DMR11
        private static void StyleButton(Button button, Font buttonFont, FlatButtonAppearance buttonAppearance)
        {
            if (button != null && buttonFont != null && buttonAppearance != null)
            {
                button.FlatStyle = FlatStyle.Flat;

                button.FlatAppearance.BorderColor        = buttonAppearance.BorderColor;
                button.FlatAppearance.BorderSize         = buttonAppearance.BorderSize;
                button.FlatAppearance.MouseOverBackColor = buttonAppearance.MouseOverBackColor;
                button.FlatAppearance.MouseDownBackColor = buttonAppearance.MouseDownBackColor;

                if (button.BackgroundImage == null)
                {
                    button.BackColor = Color.FromArgb(215, 215, 215);
                    button.ForeColor = Color.FromArgb(45, 45, 45);
                    button.Font      = buttonFont;
                }
                else
                {
                    button.BackColor = Color.FromArgb(230, 230, 230);
                }
            }
        }
コード例 #8
0
ファイル: FormMain_P2.cs プロジェクト: Eterance/UChat
            /// <summary>
            /// 往通知 panel 添加 button。
            /// </summary>
            /// <param name="panel">通知 panel</param>
            /// <param name="content">label 内容</param>
            /// <param name="backColor">label 背景颜色</param>
            /// <param name="location">label 位置</param>
            /// <param name="size">label 大小</param>
            /// <param name="borderSize">边框大小,默认为 0</param>
            private void CreateSubButton(ref Panel panel, string content, Color backColor, Point location, Size size, int borderSize = 0)
            {
                Button button = new Button()
                {//属性设置
                    AutoSize  = false,
                    FlatStyle = FlatStyle.Flat,
                    BackColor = backColor,
                    ForeColor = Color.White,
                    Font      = font,
                    Text      = content,
                    TextAlign = ContentAlignment.MiddleCenter,
                    Location  = location,
                    Size      = size,
                    Visible   = true
                };
                FlatButtonAppearance flatButtonAppearance = button.FlatAppearance;

                flatButtonAppearance.BorderColor        = Color.Gray;
                flatButtonAppearance.MouseDownBackColor = PresetColors.MouseDownBackColor;
                flatButtonAppearance.MouseOverBackColor = PresetColors.MouseOverBackColor;
                flatButtonAppearance.BorderSize         = borderSize;
                if (borderSize == 0)//边框值为0,这是一个关闭按钮
                {
                    button.BackgroundImage       = Properties.Resources.guanbi3;
                    button.BackgroundImageLayout = ImageLayout.Zoom;
                    button.Click += new EventHandler(CloseNoti_Click);//绑定点击事件
                }
                else//打开文件夹按钮
                {
                    button.BackColor = Color.Gray;
                    button.Click    += new EventHandler(Button_Click);//绑定点击事件
                }
                SetDouble(button);
                panel.Controls.Add(button);
                button.BringToFront();
            }
コード例 #9
0
		public static void DrawFlatButton (Graphics g, Rectangle bounds, ButtonThemeState state, Color backColor, Color foreColor, FlatButtonAppearance appearance)
		{
			theme.ButtonPainter.DrawFlat (g, bounds, state, backColor, foreColor, appearance);
		}
コード例 #10
0
		public virtual void DrawFlat (Graphics g, Rectangle bounds, ButtonThemeState state, Color backColor, Color foreColor, FlatButtonAppearance appearance) {
			bool is_themecolor = backColor.ToArgb () == ThemeEngine.Current.ColorControl.ToArgb () || backColor == Color.Empty ? true : false;
			CPColor cpcolor = is_themecolor ? CPColor.Empty : ResPool.GetCPColor (backColor);
			Pen pen;
			
			switch (state) {
				case ButtonThemeState.Normal:
				case ButtonThemeState.Disabled:
					// This will just use the BackColor
					break;
				case ButtonThemeState.Entered:
				case ButtonThemeState.Default | ButtonThemeState.Entered:
					if (appearance.MouseOverBackColor != Color.Empty)
						g.FillRectangle (ResPool.GetSolidBrush (appearance.MouseOverBackColor), bounds);
					else
						g.FillRectangle (ResPool.GetSolidBrush (ChangeIntensity (backColor, .9F)), bounds);
					break;
				case ButtonThemeState.Pressed:
					if (appearance.MouseDownBackColor != Color.Empty)
						g.FillRectangle (ResPool.GetSolidBrush (appearance.MouseDownBackColor), bounds);
					else
						g.FillRectangle (ResPool.GetSolidBrush (ChangeIntensity (backColor, .95F)), bounds);
					break;
				case ButtonThemeState.Default:
					if (appearance.CheckedBackColor != Color.Empty)
						g.FillRectangle (ResPool.GetSolidBrush (appearance.CheckedBackColor), bounds);
					break;
			}
			
			if (appearance.BorderColor == Color.Empty)
				pen = is_themecolor ? SystemPens.ControlDarkDark : ResPool.GetSizedPen (cpcolor.DarkDark, appearance.BorderSize);
			else
				pen = ResPool.GetSizedPen (appearance.BorderColor, appearance.BorderSize);
				
			bounds.Width -= 1;
			bounds.Height -= 1;
				
			if (appearance.BorderSize > 0)
				g.DrawRectangle (pen, bounds);
		}
コード例 #11
0
 public static void DrawFlatButton(Graphics g, Rectangle bounds, ButtonThemeState state, Color backColor, Color foreColor, FlatButtonAppearance appearance)
 {
     theme.ButtonPainter.DrawFlat(g, bounds, state, backColor, foreColor, appearance);
 }
コード例 #12
0
        public virtual void DrawFlat(Graphics g, Rectangle bounds, ButtonThemeState state, Color backColor, Color foreColor, FlatButtonAppearance appearance)
        {
            bool    is_themecolor = backColor.ToArgb() == ThemeEngine.Current.ColorControl.ToArgb() || backColor == Color.Empty ? true : false;
            CPColor cpcolor       = is_themecolor ? CPColor.Empty : ResPool.GetCPColor(backColor);
            Pen     pen;

            switch (state)
            {
            case ButtonThemeState.Normal:
            case ButtonThemeState.Disabled:
                // This will just use the BackColor
                break;

            case ButtonThemeState.Entered:
            case ButtonThemeState.Default | ButtonThemeState.Entered:
                if (appearance.MouseOverBackColor != Color.Empty)
                {
                    g.FillRectangle(ResPool.GetSolidBrush(appearance.MouseOverBackColor), bounds);
                }
                else
                {
                    g.FillRectangle(ResPool.GetSolidBrush(ChangeIntensity(backColor, .9F)), bounds);
                }
                break;

            case ButtonThemeState.Pressed:
                if (appearance.MouseDownBackColor != Color.Empty)
                {
                    g.FillRectangle(ResPool.GetSolidBrush(appearance.MouseDownBackColor), bounds);
                }
                else
                {
                    g.FillRectangle(ResPool.GetSolidBrush(ChangeIntensity(backColor, .95F)), bounds);
                }
                break;

            case ButtonThemeState.Default:
                if (appearance.CheckedBackColor != Color.Empty)
                {
                    g.FillRectangle(ResPool.GetSolidBrush(appearance.CheckedBackColor), bounds);
                }
                break;
            }

            if (appearance.BorderColor == Color.Empty)
            {
                pen = is_themecolor ? SystemPens.ControlDarkDark : ResPool.GetSizedPen(cpcolor.DarkDark, appearance.BorderSize);
            }
            else
            {
                pen = ResPool.GetSizedPen(appearance.BorderColor, appearance.BorderSize);
            }

            bounds.Width  -= 1;
            bounds.Height -= 1;

            if (appearance.BorderSize > 0)
            {
                g.DrawRectangle(pen, bounds);
            }
        }