我发现在C#中取得窗体或控件的Size值时总是int型的,怎样才能取得实际值就是float型的呢?

解决方案 »

  1.   

    控件的size值是以像素为单位的,就是说你屏幕上的点占了几个,不会有占半个点的情况,所以说只是整形的,而不会是float类型的。
      

  2.   

    楼上正解
    Size是以像素为单位的
      

  3.   

    可是,如果这种情况怎么办呢?
    我想在一个窗体上画满10x10的小方格,窗体的Width属性为520,Hight属性为120,这样的话当我应该每行画52个10x10小方格,可是画到最后一行时会出现只显示半个小方格的情况,这是怎么回事呢。是我哪个地方算错了吗?
      

  4.   

    to yf1025(小桥,流水,人家)我并不是想要float型的,因为我画的小方格在边缘的地方出现了半格的情况,所以我以为是int与float型 的问题,现在看来这种想法不对,但是麻烦看一下我错在哪了呢。我想在一个窗体上画满10x10的小方格,窗体的Width属性为520,Hight属性为120,这样的话当我应该每行画52个10x10小方格,可是画到最后一行时会出现只显示半个小方格的情况,这是怎么回事呢。是我哪个地方算错了吗?
      

  5.   

    窗体的hight与实际上去掉标题栏的大小是不一样的,用的是this.ClientSize.Hight吗?
      

  6.   

    窗体有两个不同size一个是包含边的这个,你直接取Form.Height 和 Form.Width可以取得
    另外一个是窗体的ClientSize,你说的画线的情况应该以ClientSize为基准