Originally posted by Norman Biggar
Not sure what you mean by "dock", but I use systray to minimise a window to an icon on the system tray in the taskbar.
http://www.global-shared.com/api/dl/systray.zip
Originally posted by roo
By dock, I mean attaching a Progress window somewhere on the windows desktop (maybe to the task bar or at the top of the screen) so it is visible, but nothing can be overlayed on top of it.
Originally posted by vinod_home
your question is still not clear. but if i am guessing it correct, you mean positioning a session window on the left top of your screen or left bottom of your screen and keeping the window top only.
[I]Definitions[/I]
{windows.i}
{ProExtra.i}
&SCOPED-DEFINE SW_HIDE 0
[I]local-initialize[/I]
DEFINE VARIABLE i$return AS INTEGER NO-UNDO.
DEFINE VARIABLE i$winhandle AS INTEGER NO-UNDO.
DEFINE VARIABLE i$style AS INTEGER NO-UNDO.
DEFINE VARIABLE i$oldstyle AS INTEGER NO-UNDO.
RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) .
ASSIGN i$winhandle = GetParent({&window-name}:HWND).
RUN ShowWindow in hpApi
(i$winhandle,
{&SW_HIDE},
OUTPUT i$return).
RUN GetWindowLong{&A} IN hpApi
(i$winhandle,
{&GWL_EXSTYLE},
OUTPUT i$style).
RUN Bit_Or in hpExtra
(input-output i$style,
{&WS_EX_PALETTEWINDOW}).
RUN SetWindowLong{&A} IN hpApi
(i$winhandle,
{&GWL_EXSTYLE},
i$style,
OUTPUT i$oldstyle).
RUN GetWindowLong{&A} IN hpApi
(i$winhandle,
{&GWL_STYLE},
OUTPUT i$style).
RUN Bit_Remove IN hpExtra
(INPUT-OUTPUT i$style,
{&WS_CAPTION}).
RUN Bit_Remove IN hpExtra
(INPUT-OUTPUT i$style,
{&WS_THICKFRAME}).
RUN SetWindowLong{&A} IN hpApi
(i$winhandle,
{&GWL_STYLE},
i$style,
OUTPUT i$oldstyle).
RUN SetWindowPos IN hpApi
(i$winhandle,
{&HWND_TOPMOST},
0,
0,
0,
0,
{&SWP_NOSIZE} + {&SWP_NOMOVE} + {&SWP_SHOWWINDOW},
OUTPUT i$return).
ASSIGN W-Win:X = 0
W-Win:WIDTH-PIXELS = 1024
W-Win:Y = 0
W-Win:HEIGHT-PIXELS = 20.
Originally posted by roo
Nope. I need the whole window showing. An example of a docked application would be the Microsoft Office Tool Bar, which you can dock to the top, bottom, left, or right side of the screen. That's what I'm trying to do with one Progress window, which is a marquee that scrolls information. I want this marquee viewable at all times, without interference from other windows opening up; the only way to do this is docking it.
Any idea how to do this in Progress. I can't find any dll's or ocx's that allow this on a windows desktop.
Randy
Not sure what you mean by "dock", but I use systray to minimise a window to an icon on the system tray in the taskbar.
http://www.global-shared.com/api/dl/systray.zip
well thanks for the link, but i didn't find it there :\