日期:2014-05-17  浏览次数:20883 次

求助:GDI+ 绘制直线,没显示出来
用GDI+写了个绘制带箭头直线的方法,代码如下:
private void DrawArrow(Point pStartPoint, Point pEndPoint)
        {
            Graphics vGraph = xtraScrollableControl1.CreateGraphics();
            vGraph.Clear(Color.White);
            Pen vPen = new Pen(Color.Black, 2);
            vPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
            vPen.CustomEndCap = new System.Drawing.Drawing2D.AdjustableArrowCap(3, 3);
            vGraph.DrawLine(vPen, pStartPoint, pEndPoint);
        }


为什么在xtraScrollableControl1没有显示出来?求高手解决!!感谢!

------解决方案--------------------
引用:
private void button1_Click(object sender, EventArgs e)
        {
            Brush br = new SolidBrush(Color.Red);
            Pen p = new Pen(br);
            Graphics gf =this.CreateGrap……


你要么写在重回的方法里,要么就标识一下制指定域不重回.
------解决方案--------------------
引用:
用GDI+写了个绘制带箭头直线的方法,代码如下:
C# code?123456789private void DrawArrow(Point pStartPoint, Point pEndPoint)        {            Graphics vGraph = xtraScrollableControl1.CreateGraphics();       ……


请问你的两个Point参数是否正确,还有一点就是你通过CreateGraphics()方式去画的话,在代码最后应该调用该控件的Invalidate()方法,使控件重绘,估计你是没有添加这个方法吧,我刚开始学GDI+的时候也遇到这样的问题,呵呵!希望可以帮到你!