請問form1.handle;和application.handle;為何不一樣?
應該在什麼樣的情況下分別使用它們呢??

解决方案 »

  1.   

    当然是不同的
    application本质上也是一个窗口,但它不可见,而且windows实际上也从它启动整个exe
    一个程序只能有一个application,但却可以有n多个form
    delphi用applicaion来管理所有的这些form最简单的例子就是最小化了
    你用sendmessage同样给applicaion和form发最小化的消息
    就会发现不同了
      

  2.   

    说的俗点,form1是一个窗体,是application的一部分;
    application 是整个project,它没有窗体但是有消息循环,所有的form都在他的大循环里面。
      

  3.   

    用WinSight32看看
    application的确是有个窗口,可是大小为0!
    application当然与mainform不一样了
    分别试试下面的语句,有什么不同?
    ShowWindow(Application.Handle, SW_HIDE);ShowWindow(Form1.handle, SW_HIDE);执行第一个语句的时候注意观察工具栏(就是“开始”所在的那个)发现什么了吗?
    mainform是受application控制的
    还不太了解的话,看看Application某些方法的辕马