[Resolvido] Access 2007 - Verificar caixa de texto
|
08-12-2011, 21:12
(Esta mensagem foi modificada pela última vez a: 04-01-2012 21:56 por nioxys.)
Mensagem: #1
|
|||
|
|||
[Resolvido] Access 2007 - Verificar caixa de texto
Olá
Indo directo ao assunto, eu tenho um formulário em Access 2007 que contém 3 caixas de texto, um botão e uma caixa de listagem. A caixa de listagem recebe dados de uma consulta, consulta essa que tem como critérios os dados inseridos nas caixas de texto. A consulta é executada ao clicar no botão. Resumindo, o utilizador introduz dados nas caixas de texto (nas 3 ou apenas 1 ou 2) e ao clicar no botão a caixa de listagem é carregada com os dados que correspondem à pesquisa. Até aqui tudo bem, no entanto se o utilizador não introduzir nada nas caixas de texto e clicar no botão a caixa de listagem é carregada com todos os dados. É isto que eu quero evitar e para isso pensei em colocar no evento click do botão o seguinte código, Código: Private Sub Comando16_Click() Ao executar aparece a seguinte mensagem de erro, Citar:Só é possível referenciar uma propriedade ou método para um controlo, se o foco estiver no controlo Pelo que percebi a caixa de texto tinha de ter o foco em si mas eu não sei como isso se faz nem se é possível estarem as 3 com focos uma vez que eu estou a testar as 3. Fiz umas pesquisas mas não encontrei nada em concreto, apenas que não é boa prática usar textbox.text = "" mas sim testbox.text = string.empty, isto das boas práticas eu vejo depois eu queria mesmo era conseguir testar o conteúdo das caixas de texto. Nota: Os meus conhecimentos em VBA são limitados Acabei de escrever isto e lembrei-me de uma possível solução, o botão pode estar desactivado enquanto o utilizador não introduzir nada nas caixas de texto e para o activar utilizo o eventoOnchange das caixas de texto, mas talvez dê o mesmo erro uma vez que o focos não estaria no botão, não faço ideia. Acabei de testar isto que mencionei em cima e funciona, foi preciso ter este trabalho todo para ter esta brilhante ideia. Bastou colocar o botão no estado desactivado e no evento Change de cada caixa de texto o seguinte código, Código: btnpesquisa.Enabled = True Ou seja, o utilizador não pode clicar no botão se não preencher uma das caixas de texto. A seguinte dúvida ainda persiste, Tenho outra caixa de listagem que é carregada com uma tabela que contém campos do tipo anexo, ou seja, na caixa de listagem aparece uma lista de ficheiro, pdf, por exemplo. A questão que coloco é se é possível abrir esses anexos utilizando o evento click da caixa de listagem e se sim, como? “A neutron walks into a bar and asks how much for a drink. The bartender replies, ‘For you, no charge.’” - Sheldon Cooper |
|||
02-01-2012, 16:07
(Esta mensagem foi modificada pela última vez a: 02-01-2012 16:08 por nioxys.)
Mensagem: #2
|
|||
|
|||
RE: [Dúvida] Access 2007 - Verificar caixa de texto
Já consegui resolver a minha última questão. Deixei de utilizar a funcionalidade "Anexo" do Access e criei uma pasta onde coloco todos os ficheiros. Na tabela basta ter um campo chamado Ficheiro, por exemplo, e nesse campo escrever o nome do respectivo ficheiro, Teste.pdf.
A caixa de listagem é preenchida com os valores da tabela ficando algo do género, teste.pdf teste_2.pdf etc No evento duplo clique da caixa de listagem coloco o seguinte código, Citar:Private Sub Lfile_DblClick(Cancel As Integer) Sempre que clicar numa linha da caixa de listagem é aberto o ficheiro correspondente. Fica a dica para quem precisar. “A neutron walks into a bar and asks how much for a drink. The bartender replies, ‘For you, no charge.’” - Sheldon Cooper |
|||
« Mais Antigo | Mais Recente »
|
Utilizadores a ver este tópico: 2 Visitante(s)