0

我正在开发一个简单的应用程序。

我创建了一个复选框,并使用 MoveWindow 设置它的尺寸。top , right , left 位置工作正常,但问题是,它没有响应正确的底部值。换句话说,我无法调整它的高度。

static void SetCheckboxSinhalaDimensions(HWND hwndCheckboxSinhala)
{
  double right = 0;
  double left  = TEXT_BOX_RIGHT_MARGIN * main_window_width ;
  double top = TEXT_BOX_TOP_MARGIN * main_window_height ;

  int cychar = HIWORD (GetDialogBaseUnits ()) ;
  double bottom = top+ 2*cychar; // I've used 1.5 , 1 , 0.5 and even 0.2 here
                             // but it never changed.
  MoveWindow (hwndCheckboxSinhala, right,top, left,bottom,TRUE);
}

这就是它在主窗口上的样子。 在此处输入图像描述

关于这个问题的任何解决方法?或者我错过了什么?

4

1 回答 1

1

你把参数MoveWindow弄错了。它需要left、top、width和height;不是右、上、左和下。

BOOL WINAPI MoveWindow(
  _In_  HWND hWnd,
  _In_  int X,
  _In_  int Y,
  _In_  int nWidth,
  _In_  int nHeight,
  _In_  BOOL bRepaint
);
于 2012-10-12T17:37:32.830 回答