Jump to content

Recommended Posts

Posted

boas queria fazer com que uma imagem fique sempre sobreposta no ecrã mesmo que esteja a trabalhar noutros programas essa imagem está sempre fixa no ecrã, isso dá para fazer?? alguém me consegue ilucidar???

Posted (edited)

Desde que tenhas a imagem contida num form (onde podes trabalhar as transparências à tua maneira, se aplicável) basta assinalares com TopMost=True e forçares o ZOrder periodicamente (não creio que haja algum evento que dispare eficazmente sempre que a form tome um ZOrder inferior).

Coloca nesse form:

Public Class Form1

   Private TMR As New Timers.Timer With {.Enabled = True, .Interval = 100}

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       AddHandler TMR.Elapsed, Sub()
                                   BeginInvoke(Sub()
                                                   Me.BringToFront()
                                               End Sub)
                               End Sub
   End Sub

End Class
Edited by ribeiro55

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Posted

não me funciona imagina meti duas picturebox's onde coloquei imagens arranquei com o programa e ele não me fica sobreposto quando mexo noutros programas fica sempre pra tras daquilo que eu quero

Posted

Se não fica é porque estás a fazer mal 🙂

Colocaste o código que te dei no form que queres que se sobreponha?

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Posted

sim

fiz exactamente o que disses te o que eu quero é que aquilo fique sempre no ecrã msm que imagine abra o word wherever fique a imagem sempre no topo como se fosso um logo......

Posted

Exactamente, exactamente não deves estar a fazer. Com o BringToFront periodico nem o TaskManager escapa...

Não estou a dizer só de cabeça. Estou a testar.

Eu percebi da primeira o que queres fazer.

Para despistar podes meter um timer no form com interval 100 e o código:

Me.BringToFront()

O form tem de estar TopMost=True para que o BringToFront tenha o ZStack correcto.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Posted (edited)

era o topmost = true que não tinha posto tens razão funciona 😉

sim agora e so meter o background como activecaption e fica a bombar 😉

agora e brincar com as resoluções dos monitores.

Edited by ribeiro55
  • 2 months later...
Posted

segui o que disses te mas imagina eu tenho a resolução do ecrã 800X600 e eu digo que a imagem fica ancorada no canto superior eu depois não csg mexer, eu não csg fazer em que fique apenas como espelho?? ou seja que o form apareça mas o que eu fizer por tras consiga mexer?

Posted

Como pretendes, não de ânimo leve.

Mas podes interceptar o X Y do cursor, comparar com a área da form, e fazê-la desaparecer caso interceptem (o rato passar por cima)

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Posted (edited)

se for assim como estás a dizer pra mim funciona, pois tenho uma aplicação a correr por trás e precisa de ser vista, isto é apenas para tirar logotipos e meter os meus por cima 😉

como é que eu posso fazer essa situação?

Edited by gastao

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.