CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

请教高人:文本框中怎么绘制图形?

楼主am2004(阿明)2006-01-14 18:08:50 在 .NET技术 / C# 提问

WinForm中自定义文本框中怎么绘制图形?比如一条直线.  
   
   
  有解出再加50分,谢~~~~~~~~~~~~~~~~  
  问题点数:20、回复次数:3Top

1 楼lidong6(立冬)回复于 2006-01-14 21:29:38 得分 9

继承自Textbox的控件在onpain事件中的操作无效.MSDN有这样一句话:  
   
  注意       某些   Windows   窗体控件(如   TextBox)是由   Windows   直接绘制的。在这些情况中,永远不调用   OnPaint   方法,Top

2 楼niwalker()回复于 2006-01-14 22:32:08 得分 2

你改用RichTextBoxTop

3 楼dazhu2(【倚天不出,谁与争锋】)回复于 2006-01-15 00:53:07 得分 9

可以的吧,我这段代码试过了,当鼠标移上去时画一直线  
  using   System;  
  using   System.Collections;  
  using   System.ComponentModel;  
  using   System.Drawing;  
  using   System.Data;  
  using   System.Windows.Forms;  
   
  namespace   contro_lset  
  {  
  ///   <summary>  
  ///   mybutton   的摘要说明。  
  ///   </summary>  
  public   class   mybutton   :   System.Windows.Forms.TextBox  
  {  
  ///   <summary>  
  ///   必需的设计器变量。  
  ///   </summary>  
  private   System.ComponentModel.Container   components   =   null;  
   
   
  public   mybutton()  
  {  
  //   该调用是   Windows.Forms   窗体设计器所必需的。  
  InitializeComponent();  
  this.Width=100;  
  this.Height=75;  
  MouseEnter+=new   EventHandler(OnMouseEnter);  
   
  //   TODO:   在   InitComponent   调用后添加任何初始化  
  }  
   
  ///   <summary>  
  ///   清理所有正在使用的资源。  
  ///   </summary>  
  protected   override   void   Dispose(   bool   disposing   )  
  {  
  if(   disposing   )  
  {  
  if(   components   !=   null   )  
  components.Dispose();  
  }  
  base.Dispose(   disposing   );  
  }  
   
  #region   组件设计器生成的代码  
  ///   <summary>  
  ///   设计器支持所需的方法   -   不要使用代码编辑器    
  ///   修改此方法的内容。  
  ///   </summary>  
  private   void   InitializeComponent()  
  {  
  components   =   new   System.ComponentModel.Container();  
  }  
  #endregion  
   
  protected   override   void   OnPaint(PaintEventArgs   pe)  
  {  
          pe.Graphics.DrawLine(new   Pen(Color.Blue),0,4,80,5);  
   
  }  
  private   void   OnMouseEnter(object   o,System.EventArgs   e)  
  {  
                    OnPaint(new   PaintEventArgs(this.CreateGraphics(),this.ClientRectangle));  
   
  }  
   
   
  }  
  }  
  Top

相关问题

  • 文本框怎么啦?
  • 怎么找到下一个文本框
  • 怎么把文本框的值取出?
  • 怎么定位到文本框?
  • 怎么让文本框换行?
  • 从文本框怎么得到文字????
  • 怎么对文本框进行操作
  • 文本框怎么绑定数据?
  • 怎么确认文本框焦点??????
  • vfp:怎么样在文本框得到焦点的时候,把文本框内的内容全部选定?

关键词

  • 代码
  • 绘制
  • 调用
  • mybutton
  • disposing
  • onpaint
  • componentmodel
  • 设计
  • components
  • 方法

得分解答快速导航

  • 帖主:am2004
  • lidong6
  • niwalker
  • dazhu2

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo