如何判断一个窗体的状态为show
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何判断一个窗体的状态为show相关的知识,希望对你有一定的参考价值。
我的设计是,当一个窗体的状态为show时,另一窗体中的label的值会改变.或者说,当前窗体为form1时, form3中的label会显示"abcdef".这样的代码应该怎么写
BOOL IsWindowVisible(HWND hWnd);返回值:如果指定的窗口及其父窗口具有WS_VISIBLE风格,返回值为非零;如果指定的窗口及其父窗口不具有WS_VISIBLE风格,返回值为零。由于返回值表明了窗口是否具有Ws_VISIBLE风格,因此,即使该窗口被其他窗口遮盖,函数返回值也为非零。BOOL IsIconic(HWND hWnd)参数: hWnd:被测试窗口的句柄。 返回值:如果窗口已图标化,返回值为非零;如果窗口未图标化,返回值为0
BOOL IsZoomed(HWND)返回值:如果窗口己最大化,则返回值为非零;如果窗口未最大化,则返回值为零。
结合这3个API,HWND都是你要找的窗口的句柄 参考技术A delphi版本保存的文件名 implementation
uses unit2,unit3; //衔接第二第三个窗体
$R *.dfmprocedure TForm1.Button1Click(Sender: TObject);
begin
form3.Label1.Caption:='abcdef'; //第三个窗体Label控件实现内容:abcdef
form2.Show; //打开第二窗体
form1.Hide; //隐藏第一窗体
end; 参考技术B Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPrivate Sub Command1_Click()
Form2.Show
End SubPrivate Sub Timer1_Timer()
h = FindWindow(vbNullString, "form2")
If h <> 0 Then
Label1.Caption = "abcdef"
End If
End Sub
以上是关于如何判断一个窗体的状态为show的主要内容,如果未能解决你的问题,请参考以下文章