资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
C# 高仿腾讯QQ (TextBox控件美化)(附源码)这篇来说一下QQ皮肤TextBox控件的美化: (1)已修正 每次窗口最小化以后再还原会发现窗口底部往下移了几十个像素(但还不十分完善,在设计模式时有BUG,请高手支招) 效果图如下: 说明: (1)新增一个自定义控件(ALTextBox.cs),在上面放一个TextBox控件,把控件的边框属性设为无 (BorderStyle=BorderStyle.None); (2)准备一张带有5个状态的按钮图片如 分别对应5种状态,通过重写OnPaint方法把相应的状态图画进去(其实有几种状态用不到,大家自己去修正吧) /枚举按钮的状态 public enum State Normal = 1,/按钮默认时MouseOver = 2,/鼠标移上按钮时MouseDown = 3,/鼠标按下按钮时Disable = 4,/当不启用按钮时(也就是按钮属性Enabled=Ture时)Default = 5/控件得到Tab焦点时 ALTextBox.cs类源码代码 using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing;using System.Data;using System.Linq;using System.Text;using System.Windows.Forms;using AlSkin.AlClass;namespace AlSkin.AlControl.AlTextBox public partial class AlTextBox : UserControl #region 声明 private Bitmap _TextBoxBackImg = ImageObject.GetResBitmap(AlSkin.AlSkinImg.AlTextBoxImg.Textbox.png); private State state = State.Normal; private bool _Isico = false; private Bitmap _Ico; private Padding _IcoPadding=new Padding(3,3,0,0); /枚鼠标状态 private enum State Normal = 1, MouseOver = 2, MouseDown = 3, Disable = 4, Default = 5 #endregion #region 构造 public AlTextBox() InitializeComponent(); this.SetStyle(ControlStyles.UserPaint, true); this.SetStyle(ControlStyles.DoubleBuffer, true); this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); this.SetStyle(ControlStyles.SupportsTransparentBackColor, true); this.SetStyle(ControlStyles.StandardDoubleClick, false); this.SetStyle(ControlStyles.Selectable, true); this.BackColor = Color.Transparent; #endregion #region 属性 Category(阿龙自定义属性), Description(与控件关联的文本) public string text get return BaseText.Text; set BaseText.Text = value; Category(阿龙自定义属性), Description(输入最大字符数) public int MaxLength get return BaseText.MaxLength; set BaseText.MaxLength = value; Category(阿龙自定义属性), Description(与控件关联的文本) public new string Text get return BaseText.Text; set BaseText.Text = value; Category(阿龙自定义属性), Description(将控件设为密码显示) public bool IsPass get return BaseText.UseSystemPasswordChar; set BaseText.UseSystemPasswordChar = value; Category(阿龙自定义属性), Description(密码显示字符) public char PassChar get return BaseText.PasswordChar; set BaseText.PasswordChar = value; Category(阿龙自定义属性), Description(将控件设为多行文本显示) public bool Multiline get return BaseText.Multiline; set BaseText.Multiline = value; if (value) BaseText.Height = this.Height - 6; else base.Height = 22; BaseText.Height = 16; this.Invalidate(); Category(阿龙自定义属性), Description(将控件设为多行文本显示) public Font font get return BaseText.Font; set BaseText.Font = value; Category(阿龙自定义属性), Description(将控件设为只读) public bool ReadOnly get return BaseText.ReadOnly; set BaseText.ReadOnly = value; Category(阿龙自定义属性), Description(多行文本的编辑行) public String lines get return BaseText.Lines; set BaseText.Lines = value; Category(阿龙自定义属性), Description(是否显示图标) public bool Isico get
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号