IDENTIFICAR FORM
Caros Amigos
Criei um UserControl genético para ser usado em vários Forms. Mas não sei qual o comando que do VB6 que identifica em qual form o Usercontrol está sendo executado. Podem me ajudar?
Criei um UserControl genético para ser usado em vários Forms. Mas não sei qual o comando que do VB6 que identifica em qual form o Usercontrol está sendo executado. Podem me ajudar?
Amigo, é genérico e não genético hehehehe. Mas verifique a propriedade Parent, é possÃvel que ela esteja disponÃvel.
Você cruzou espermatozoide binário com um óvulo hexadecimal para criar o USERCONTROL rsrsrsrsrs....
brincadeiras a parte, porque vc deseja saber em qual form o usercontrol está sendo executado, uma vez que o usercontrol é como uma ocx e deve executar alguma função no form, este usercontrol fica invisivel?
brincadeiras a parte, porque vc deseja saber em qual form o usercontrol está sendo executado, uma vez que o usercontrol é como uma ocx e deve executar alguma função no form, este usercontrol fica invisivel?
Pelo jeito devo estar falando um monte de bobagem! Bem, vivendo e aprendendo!
O objetivo aqui é criar um Skin, através de um UserControl. Mas criar somente um UserControl que possa ser usado em todas as Forms.
Por que?
Porque, há um código dentro do UserControl onde o Form pode ser movido ou redimensionado. Porém, neste código estão contidas instruções como, por exemplo, Form1.Width.
Assim, eu gostaria que o UserControl [Ô]soubesse[Ô] em qual Form ele está atuando, para não precisar criar um USerControl para cada Form.
Por outro lado, se houver uma opção melhor de crair Skins, peço que também comentem.
O objetivo aqui é criar um Skin, através de um UserControl. Mas criar somente um UserControl que possa ser usado em todas as Forms.
Por que?
Porque, há um código dentro do UserControl onde o Form pode ser movido ou redimensionado. Porém, neste código estão contidas instruções como, por exemplo, Form1.Width.
Assim, eu gostaria que o UserControl [Ô]soubesse[Ô] em qual Form ele está atuando, para não precisar criar um USerControl para cada Form.
Por outro lado, se houver uma opção melhor de crair Skins, peço que também comentem.
Eu não conheço uma forma de se fazer isso, particularmente uso o activeskin, e como o seu USERCONTROl o active skin tem que ser colocado em todos os forms, porém alguém aqui postou certa vez uma função que é colocada em um modulo, e com ela você coloca o activeskin em apenas um form depois a função insere nos demais.
veja
com a função acima coloco o activeskin apenas no frmprincipal, nos demais forms aplico o skin assim
AplicaSkin Me
veja
Public Sub AplicaSkin(ByVal vForm As Form, Optional ByVal vSkin As ACTIVESKINLibCtl.Skin)
Dim SkinFile As String
Dim Ctl As Control
Dim sIndex As String
On Error Resume Next
SkinFile = App.Path & [Ô]\skins\Xtreme vista.skn[Ô]
For Each Ctl In vForm
Next Ctl
DoEvents
If sIndex = [Ô][Ô] Then Set vSkin = frmprincipal.Skin1
If SkinFile <> [Ô][Ô] Then vSkin.LoadSkin SkinFile
vSkin.ApplySkin vForm.hWnd
For Each Ctl In vForm.Controls
If TypeOf Ctl Is ComboBox Then
vSkin.ApplySkinByName Ctl.hWnd, [Ô]ComboBox[Ô]
End If
Next
If Err Then Err.Clear
End Sub
com a função acima coloco o activeskin apenas no frmprincipal, nos demais forms aplico o skin assim
AplicaSkin Me
Citação::
Você cruzou espermatozoide binário com um óvulo hexadecimal para criar o USERCONTROL rsrsrsrsrs....
KKKKKKKKKKKKKKKKKKKKK
Na função redimensionar do seu UserControl, imagino, que ele receba parametros.
Exemplo: Sub Redimencionar(ByVal form As Object)
No evento resize do seu form tente isso:
Private Sub form_Resize()
Call UserControl.redimencionar(Me.Name) [txt-color=#007100] [ô]Aqui você esta chamando a função [Ô]Redimencionar[Ô] do seu componente e passando o Nome do Formulário.[/txt-color]
End Sub
Exemplo: Sub Redimencionar(ByVal form As Object)
No evento resize do seu form tente isso:
Private Sub form_Resize()
Call UserControl.redimencionar(Me.Name) [txt-color=#007100] [ô]Aqui você esta chamando a função [Ô]Redimencionar[Ô] do seu componente e passando o Nome do Formulário.[/txt-color]
End Sub
Na realidade o usercontrol não é meu é uma ocx de terceiros ACTIVESKIN, a função redimensionar está dentro da mesma, não sei como funciona.
você já ouviu falar desta ocx,? inclusive já existem varios mais varios skins já criados para ela.
você já ouviu falar desta ocx,? inclusive já existem varios mais varios skins já criados para ela.
Tópico encerrado , respostas não são mais permitidas