代码改变世界

C#仿QQ皮肤-DateTimePicker 控件实现

  苏飞  阅读(3605)  评论(1编辑  收藏  举报

原文:http://www.sufeinet.com/thread-2094-1-1.html

       

大家还是先来看看效果吧


 

 

下面我们一起来看看是怎么样实现的


 这个暂时实现的比较简单一些,我只是给他加了一个外衣,其它的基本没有动,就是现在看到的效果,点开之后是和系统是控件DateTimePicker一个样子,呵呵

      所以我在这里就不在多说什么了,实现 的很不进如人意,我会慢慢更新的,在这里只是先把代码放在这里,大家感觉那里不合适的可以帮助我改动一下,感谢

 

1.怎么样实现的上图效果

 

复制代码
代码
  public void ResetBitmap()
        {
            
this.NormalImage = Shared.NomalDrawButton;
            
this.MouseDownImage = Shared.MouseDownDrawButton;
            
this.MouseMoveImage = Shared.MouseMoveDrawButton;
        }

        
protected override void OnValueChanged(EventArgs eventargs)
        {
            
base.OnValueChanged(eventargs);
            
this.Invalidate();
        }  
private void OverrideDropDown(Graphics g)
        {
            
//if (!this.ShowUpDown)
            
//{
            Rectangle rect = new Rectangle(this.Width - DropDownButtonWidth, 0, DropDownButtonWidth, this.Height);
            
//ControlPaint.DrawComboButton(g, rect, ButtonState.Flat);
            
//}
            g.FillRectangle(new SolidBrush(Color.White), rect);

            
if (this.Enabled)
            {
                
if (_mouseEnter)
                {
                    g.DrawImage(
this.MouseMoveImage, new Rectangle(this.Width - 2031616));
                }
                
else
                {
                    g.DrawImage(
this.NormalImage, new Rectangle(this.Width - 2031616));
                }
            }
            
else
            {
                g.DrawImage(Shared.NotEnableDrawButton, 
new Rectangle(this.Width - 2031616));
            }
        }
复制代码

 

 

2.时间和日期绘制

..................

3.几个常用事件的处理

..................

 

 

下面是程序所有代码


 

 

 原文:http://www.sufeinet.com/thread-2094-1-1.html

 

 

(评论功能已被禁用)
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示