🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: borland.public.cppbuilder.nativeapi
3 messages
3 total messages Started by Mikael Halvarsson Mon, 03 Mar 2003 23:11
"On Screen Display" but how?
#17729
Author: Mikael Halvarsson
Date: Mon, 03 Mar 2003 23:11
16 lines
1611 bytes
Hi,

I'm interested in implementing an OSD (On Screen Display). Typically a green
text that displays some text at the bottom of the screen and disappears
after a second.
But I cannot figure out on how to do this. I've been lurking on maybe
creating an simple "Always on top" window and then display a text inside it
but I dont know how to make the window "transparent" and clickthrou and
still show a text inside it. Also tried to get the DC for the whole screen
and then just use a TextOut or similiar APIs to display a text on the
screen, but this feels really lame and it requires to be redrawn very
frequently.

So any suggestions or links on this topic would really be appreciated by me.

-mikael
Re: "On Screen Display" but how?
#17727
Author: Remy Lebeau (TeamB)
Date: Mon, 03 Mar 2003 23:48
19 lines
1783 bytes
Are you wanting to do this with raw API only or with a VCL form?  Either
way, give the window the WS_EX_TRANSPARENT extended style, and then create a
second window as a child that contains the actual text.

In API terms, use the CreateWindowEx() function for the main window and then
CreateWindow() with the "STATIC" class name for the text.

In VCL terms, override the form's inherited CreateParams() method to include
WS_EX_TRANSPARENT in the ExStyle field, and then use a TLabel for the text.


Gambit

"Mikael Halvarsson" <invalid@mail.com> wrote in message
news:3e63e111$1@newsgroups.borland.com...
> I've been lurking on maybe creating an simple "Always on top"
> window and then display a text inside it but I dont know how to
> make the window "transparent" and clickthrou and still show a
> text inside it.
Re: "On Screen Display" but how?
#17680
Author: Mikael Halvarsson
Date: Wed, 05 Mar 2003 15:12
22 lines
1656 bytes
I was thinking using of raw API calls, I will try your tips. Thanks

-mikael

"Remy Lebeau (TeamB)" <gambit47@yahoo.com> wrote in message
news:3e63e7c9@newsgroups.borland.com...
> Are you wanting to do this with raw API only or with a VCL form?  Either
> way, give the window the WS_EX_TRANSPARENT extended style, and then create
a
> second window as a child that contains the actual text.
>
> In API terms, use the CreateWindowEx() function for the main window and
then
> CreateWindow() with the "STATIC" class name for the text.
>
> In VCL terms, override the form's inherited CreateParams() method to
include
> WS_EX_TRANSPARENT in the ExStyle field, and then use a TLabel for the
text.
>
>
> Gambit
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads