Function : WinAPI muta fereastra

Lasă un comentariu

15 Iulie 2009 de liviustoica55


client static void moveWindow(int hWnd, int x,int y)
{
    DLL                 _winApiDLL;
    DLLFunction         _func;
    InteropPermission   interopPerm;

  #define.SWP_NOSIZE(         0x0001)
   #define.SWP_NOMOVE(         0x0002)
   #define.SWP_NOZORDER(       0x0004)
   #define.SWP_NOREDRAW(       0x0008)
   #define.SWP_NOACTIVATE(     0x0010)
   #define.SWP_FRAMECHANGED(   0x0020)  /* The frame changed: send WM_NCCALCSIZE */
   #define.SWP_SHOWWINDOW(     0x0040)
   #define.SWP_HIDEWINDOW(     0x0080)
   #define.SWP_NOCOPYBITS(     0x0100)
   #define.SWP_NOOWNERZORDER(  0x0200)  /* Don’t do owner Z ordering */
   #define.SWP_NOSENDCHANGING( 0x0400)  /* Don’t send WM_WINDOWPOSCHANGING */

    // get dll interop permission
    interopPerm = new InteropPermission(InteropKind::DllInterop);
    interopPerm.assert();

    // BP deviation documented
    _winApiDLL = new DLL(‘USER32’);
    _func      = new DLLFunction(_winApiDLL, ‘SetWindowPos’);

    _func.returns(ExtTypes::DWord);
    _func.arg(ExtTypes::DWord,   // hWnd
                ExtTypes::DWord, // Insert After
                ExtTypes::DWord, // x
                ExtTypes::DWord, // y
                ExtTypes::DWord, // cx
                ExtTypes::DWord, // cy
                ExtTypes::DWord); // flags

    _func.call(hWnd, 0,x,y,0,0, #SWP_NOSIZE | #SWP_NOZORDER | #SWP_NOACTIVATE | #SWP_NOOWNERZORDER );
}

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s

%d blogeri au apreciat asta: