none
vb.net如何在ppc中最小化 RRS feed

  • 问题

  • 如题,我想在启动程序后,最小化界面,请问如何操作,我用的是vb2005,可以给个详细点的程序么
    2010年9月1日 8:41

答案

  • 你好,

    可以P/Invoke一下:

    --------------------------------------------------------------------------

    //引用

    using System.Runtime.InteropServices;

    //DllImport

    private const int SW_MINIMIZE = 0x06;          
    [DllImport("coredll.dll")]  
    static extern bool ShowWindow(IntPtr hWnd, int nCmdShow); 

    //在需要最小化的地方调用下面的函数

    ShowWindow(Handle, SW_MINIMIZE); 

    ---------------------------------------------------------------------------


    施炯
    2010年9月1日 23:48
    版主
  • VB中签名如下:

      Const SW_MINIMIZE = 6

        <DllImport("coredll.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
        Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As Int32) As Boolean
        End Function

    其实看一个函数的签名,可以去下面的网站去看:
    http://pinvoke.net/default.aspx/user32/FindWindow.html

    还有如果把c# 和VB代码互相转化,可以去下面的网站转:
    http://www.developerfusion.com/tools/convert/csharp-to-vb/


    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年9月2日 6:37
    版主

全部回复

  • 你好,

    可以P/Invoke一下:

    --------------------------------------------------------------------------

    //引用

    using System.Runtime.InteropServices;

    //DllImport

    private const int SW_MINIMIZE = 0x06;          
    [DllImport("coredll.dll")]  
    static extern bool ShowWindow(IntPtr hWnd, int nCmdShow); 

    //在需要最小化的地方调用下面的函数

    ShowWindow(Handle, SW_MINIMIZE); 

    ---------------------------------------------------------------------------


    施炯
    2010年9月1日 23:48
    版主
  • 谢谢斑竹的回复。你给的是c#的程序吧?我不懂c#, 只是懂得vb, 方便给我一点提示或者修改,如何改成vb呢?
    2010年9月2日 1:14
  • VB中签名如下:

      Const SW_MINIMIZE = 6

        <DllImport("coredll.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
        Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As Int32) As Boolean
        End Function

    其实看一个函数的签名,可以去下面的网站去看:
    http://pinvoke.net/default.aspx/user32/FindWindow.html

    还有如果把c# 和VB代码互相转化,可以去下面的网站转:
    http://www.developerfusion.com/tools/convert/csharp-to-vb/


    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年9月2日 6:37
    版主
  • 谢谢斑竹,修改之后,可以运行了。但是如果我想一启动的时候马上最小化,就是放在form1_load里面没有反应,是什么原因呢?

    2010年9月2日 7:08
  • Form_load是启动函数,我估计最小化后又被重新发到前台来了。
    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年9月6日 3:43
    版主
  • 那应该用什么办法解决呢

    2010年9月6日 6:07
  • 如果你不想显示界面,可以考虑用控制台或者是windows service之类的。
    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年9月6日 9:29
    版主
  • 应该怎样做呢,好像vb.net很少这方面的介绍。
    2010年9月13日 6:42