• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

skin

[Visal Basic 6.0]Esconder objecto depois de clique e por um programa numa janela

20 mensagens neste tópico

Boas pessoal. Eu começei hoje a desenvolver um programa em Visual Basic. Estou a utilizar o Microsoft Visual Basic 6.0 apesar de também ter instalado o 2005 ou versão 8.

E deparei-me com os seguintes problemas.

1º - Eu tenho uma radio box para checar e eu queria que depois de esta ter o V desaparece-se para sempre. Como posso fazer isto?

2º - Eu tenho uma aplicação em formato .exe no computador e queria implementar essa aplicação existente na janela do meu programa. Como posso fazer isso?

;):P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para já deves sempre optar por uma dúvida por topic.

1 - Visible = false ?!

2 - Não percebi.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

1 - Fazes magia e puff ela desaparece =D, just kidding, o vbmaster já respondeu lol...

2 - também não percebi lá muito bem. queres executar essa aplicação através do teu programa ou queres que essa aplicação corra sobre o teu programa da mesma maneira que todas as aplicações correm sobre um sistema operativo? se for a primeira opção, usa o shell(), mas cheira-me que não é...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas como faço isso? Para desaparecer.

Tipo eu tenho uma aplicação e quero que apareça dentro da janela do meu programa uma área onde apareça esse programa. Isso é possível?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

se isso for possível, eu não sei como... mas deve ser algo bastante avançado de ser fazer, penso eu.

no evento click ou check da checkbox fazes nome_da_checkbox.visible = false

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o que pretendes fazer é obter introduzir uma aplicação externa dentro duma janela na tua aplicação?

Se é isso vais ter de usar a API Windows

uma vez que todas as aplicações são janelas para o windows :

  vais ter de obter o id da janela da tua aplicação

depois obter o id da outra aplicação

e por fim dizer que o od id parent da outra aplicação é o da janela da aplicação.

da propriedade  [objecto].hwnd  obtens o id da tua janela

  [objecto] será o nome da janela ou controlo que vai servir de pai

com a api FindWindow obtens o id da outra aplicação

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/getwindow.asp

com a api SetParent o mudar a janela pai

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/getwindow.asp

estas duas funções deves declarar num modulo da tua aplicação com a instrução declare para as importar dos respectivos dlls do windows.

Private Declare Function SetParent Lib "user32" _

  (ByVal hWndChild As Long, _

  ByVal hWndNewParent As Long) As Long

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

tens as peças agora e só montares :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu consegui implementar o código que me deste NuGuN. Só que eu queria que não aparecesse aquilo de escolher a aplicação, isto é que mal a aplicação incia-se a aplicação externa tb.

A aplicação foi desenvolvida por ti acho eu NuGuN. Tipo uma de actualizar o registo?! Se me arranja-ses a form :D.

E quanto a primeira ninguém sabe explicar direitinho??

Obrigado a todos que ate agora contribuiram para exclarecer as minha duvidas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

skin aprende, não se passa a form dum projecto, passa-se o projecto!

Andas aí às marradas com isso desnecessáriamente.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

lol eu aquela parte já está feito. Tipo arrnajei o código e inclui no meu projecto e já funciona.

a segunda parte é que nickles. Podes explicar vbmaster? ou alguem que manje disto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso eu já fiz. O que eu quero é a primeira pergunta.

1º - Eu tenho uma radio box para checar e eu queria que depois de esta ter o V desaparece-se para sempre. Como posso fazer isto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso eu já fiz. O que eu quero é a primeira pergunta.

1º - Eu tenho uma radio box para checar e eu queria que depois de esta ter o V desaparece-se para sempre. Como posso fazer isto?

No evento checked da radiobox metes radiobox.visible=false

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

EDIT

Tive outra ideia melhor porque já estava a complicar muito  :thumbdown: vou pôr o valor predefinido como Checked e ponho logo Visible = False. Assim já está feito. Não?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mas se vai estar invisivel logo de inicio para que é que a queres?  :dontgetit:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois mas n deu para fazer. Tem de ser mesmo o utilizador a por la o visto e ela depois desparecer se não não funciona :/!

Queria para alterar uma propriedade do Registo do Windows para o meu programa. Mas o utilizador tem mesmo que por o visto se não não funciona.

Com este código como implemento a função de quando a caixa for seleccionada ele desaparecer?

Private Sub chkAssoc_Click()
    If chkAssoc.Value = vbChecked And OrigAssoc Then
        Call AssociateFileExtension("skin", exe_File_Path, "SkinFile")
    ElseIf OrigAssoc Then
        Call UnAssociateFileExtension("skin", "SkinFile")
    End If
End Sub

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Private Sub chkAssoc_Click()
    If chkAssoc.Value = vbChecked And OrigAssoc Then
        Call AssociateFileExtension("skin", exe_File_Path, "SkinFile")
        chkAssoc.Visible = False
    ElseIf OrigAssoc Then
        Call UnAssociateFileExtension("skin", "SkinFile")
    End If
End Sub

Tenta assim ...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:cheesygrin: Deu. Agora só falta ver se a função não é alterada :D:D:D:

Obrigadão.

EDIT

Programa a funcionar lindamente qualquer dia quando isto tiver em uma versão sem ser de testes eu coloco nos projectos aqui do fórum mas por enquanto só preciso de Beta Testers. Versão beta 1 concluída. Em construção versão Beta 2.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quando eu criar o meu novo site feito totalmente criado por mim. Todo o conteúdo vai estar em extensões .skin

O programa é um editor dessas extensões e associa-as ao registo. Depois também lê todas as outras extensões como o Notepad faz.

:D. É talvez mais um projecto sem interesse para a comunidade :D.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora