Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在WinC窗体中打印pointf#_C#_Winforms_Printing_Draw - Fatal编程技术网

C# 如何在WinC窗体中打印pointf#

C# 如何在WinC窗体中打印pointf#,c#,winforms,printing,draw,C#,Winforms,Printing,Draw,我是编程新手,我想在windows窗体应用程序中打印一个点。 如果我已经有了一个与x&y一起赋值的点f,那么代码是什么? 非常感谢Isaac,这不是一个非常详细的问题,但从我得到的信息是,您有一个windows窗体,您想画一个“点”(1px 1px点)?如果你使用的是windows窗体,那就很容易了 转到窗体的设计器视图的步骤 选中表单时,在表单背景上单击鼠标右键 单击属性 单击“属性”选项卡的“事件”选项卡(闪电) 向下滚动,直到看到该窗体的绘制事件 键入该事件的函数名 浏览到表单的源文件

我是编程新手,我想在windows窗体应用程序中打印一个点。 如果我已经有了一个与x&y一起赋值的点f,那么代码是什么?
非常感谢

Isaac,这不是一个非常详细的问题,但从我得到的信息是,您有一个windows窗体,您想画一个“点”(1px 1px点)?如果你使用的是windows窗体,那就很容易了

  • 转到窗体的设计器视图的步骤

  • 选中表单时,在表单背景上单击鼠标右键

  • 单击属性

  • 单击“属性”选项卡的“事件”选项卡(闪电)

  • 向下滚动,直到看到该窗体的绘制事件

  • 键入该事件的函数名

  • 浏览到表单的源文件

  • 使用下面的代码。有两种方法可以画一个点,我使用1px线或填充的1px框

    private void paintEvent(object sender, PaintEventArgs e)
    {
        // Create a local version of the graphics object for the PictureBox.
        Graphics g = e.Graphics;
    
        // Draw a line in the PictureBox.
        g.DrawLine(System.Drawing.Pens.Red, 50, 50,
            51, 51);
        g.DrawRectangle(System.Drawing.Pens.Red, 50, 50, 1, 1);
    
    }
    

  • 您可以尝试使用
    Graphics
    对象的
    FillRectangle
    来用
    1x1
    (看起来像一个点)的尺寸填充矩形,因为
    Graphics
    对象没有任何类似
    SetPixel
    的方法:

    public void SetPixel(PointF p, Color c, Graphics g){
      using(Brush brush = new SolidBrush(c)){
        e.Graphics.FillRectangle(brush, new RectangleF(p, new Size(1, 1)));
      }
    }
    //Paint event handler of your form
    private void Form1_Paint(object sender, PaintEventArgs e){
       SetPixel(yourPoint, Color.Red, e.Graphics);
    }
    

    你想在什么上面印个点?你的表格,你的控件,或者其他什么?你试过什么吗?我想在我的表格上打印一个点,我得到了我要打印点的坐标,但是打印出来的代码是什么?开始时的50,50,51,51是什么,g是什么?它是在paintevent“PaintEventArgs e”视图中传递的var50,50,51,51在x=50 y=50到x2=51 y2=51i处画一条线,将使用g.DrawRectangle(System.Drawing.Pens.Red,50,50,1,1);虽然它是一个单像素的框,但实际上不需要填充框,因为它只有一个像素大小