Boas pessoal, alguem sabe como é que eu faço para obter valores atraves de uma textfield?, ou seja, tenho um dialogo e depois tenho uma textfield onde se tem de colocar uma password para ter acesso a algumas opçoes do ficheiro. eu nao uso acesso a nenhuma database, so queria ter uma pass de entrada, para desbloquear certas opçoes do programa que eu estou criando.
Aguardo resposta… cumps
pessoal desculpem insistir mas tenho um trabalho para entregar com alguma urgencia e estou ficando sem tempo e so me falta este pedaço de codigo que permite buscar valores da textfield. estou aguardando entretanto. cumps
Para obter o que foi digitado no campo TextField2 da caixa oDialogo
nResultado = oDialogo.execute
texto = oDialogo.getModel().getByName("TextField2").Text
Desculpa companheiro mas essa macro que você respondeu aqui neste topico nao se comapara a esta que eu criei Xd, mas deixo aqui um pedaço do meu codigo para quem precisar alguma vez. E obrigado na mesma pela ajuda Antonio, mas neste caso o que já tinha desenvolvido acho que é muito melhor em todos os sentidos. O que no meu caso resolve o problema para este caso, mas se me pedirem para utilizar isto num forme pré definido, isso já não sei lol.
cumprimentos… (deixo a macro que desenvolvi embaixo, é so colar e alterar a pass onde diz “Coloque aqui a pass deseja” e de resto poderão modificar o que quiserem consoante o gosto de cada um.
sub sistema_de_pass_num_documento
Dim oDlg As Object
dim fname
fname = InputBox (Prompt:="INTRODUZA A PASSOWORD DE ACESSO:",TITLE:="Este acesso é Restrito:",Default:="**********")
IF FNAME = "**********" THEN
EXIT SUB
END IF
IF FNAME = "" THEN
EXIT SUB
END IF
IF FNAME = "Coloca aqui a pass que deseja" THEN
MsgBox "PassWord Aceite. Irá ser Redirecionado..."
'aqui você coloca para onde quer que o programa vá, ou..
ELSE
MsgBox ("A palavra --> " & fname & " -->" & " é inválida. Tente novamente.")
MsgBox "A Janela Será Fechada"
exit sub
obrigadão olivier, já consegui fazer o sistema de password atraves do form.
Obrigado aos que ajudarão e bom fim de semana para os membros do forum.
Pois então, vendo seu código fica mais fácil entender o que vc queria. Mas, obrigado por disponibilizá-lo.
Olá,
Há diversas formas de conseguir uma solução para o seu caso no Star/AOO/LibO Basic
Abaixo coloco um código, que achei, que cria em tempo de execução um diálogo de solicitação de senha com uma caixa de texto e dois botões. No final ele retorna o conteúdo digitado no textfield. Com isso vc pode adaptá-lo para ser uma função que retorne a senha do usuário.
Sub dlgSenha
' Criar o diálogo
oDialog = CreateUnoService("com.sun.star.awt.UnoControlDialog")
oDialogModel = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
oDialogModel.setPropertyValues( _
Array("Height","PositionX","PositionY","Title","Width"), _
Array(50,30,30,"Insira sua senha",100))
oDialog.setModel(oDialogModel)
' Criar a caixa de texto (oEditModel) que receberá a senha.
oEditModel = oDialogModel.createInstance("com.sun.star.awt.UnoControlEditModel")
oEditModel.setPropertyValues( _
Array("EchoChar","Height","PositionX","PositionY","Width"), _
Array(asc("*"),15,5,5,90) )
oEditModel.EchoChar = asc("*")
oDialogModel.insertByName("PasswordEdit",oEditModel)
' Criar o botão "Cancelar" e o botão "Ok"
oOKButton = oDialogModel.createInstance("com.sun.star.awt.UnoControlButtonModel")
oOKButton.setPropertyValues( _
Array("DefaultButton","Height","Label","PositionX","PositionY","PushButtonType","Width"), _
Array(True,15,"~OK",55,25,1,40))
oDialogModel.insertByName("OkButton",oOKButton)
oCancelButton = oDialogModel.createInstance("com.sun.star.awt.UnoControlButtonModel")
oCancelButton.setPropertyValues( _
Array("Height","Label","PositionX","PositionY","PushButtonType","Width"), _
Array(15,"~Cancelar",5,25,2,40))
oDialogModel.insertByName("CancelButton",oCancelButton)
' Exibir o diálogo
oDialog.setVisible(True)
If oDialog.execute() = 1 Then
' Retorna a senha fornecida
msgbox oEditModel.Text
End If
End Sub
Fonte: http://www.oooforum.org/forum/viewtopic.phtml?t=65037
Atte,
Grafeno (Antonio)
obrigadão, agora vou tentar adaptar o codigo.