Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
20 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 20 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Erro de compatibilidade de cores

28/3/2017, 10:59 por Clebervfp

Boa dia, estou com um problema com vfp9, se alguém poder me ajudar fico agradecido!

Tenho um …

Comentários: 0

Espessura do cursor intermitente

7/3/2017, 09:08 por Jefferson Matakas

Bom dia a todos !!

Existe uma opcao no windows que pode ser acessada atraves da 'central da …

Comentários: 0

DESENVOLVIMENTO EM REDES

4/3/2017, 18:45 por AJC

Pessoal tem ou conhece livros ou material para programação em
redes usando banco de dados nativo …

Comentários: 0

USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 4

Como preencher campos vazios

9/2/2017, 11:55 por Linghston

Pessoal boa tarde,

É o seguinte, eu preciso preencher os campos de uma coluna da tabela DBF que …

Comentários: 2

Estatísticas
Temos 7039 usuários registrados
O último usuário registrado atende pelo nome de missias

Os nossos membros postaram um total de 32 mensagens em 18 assuntos

Classe alterando elementos do form

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido Classe alterando elementos do form

Mensagem por halisson em 26/11/2010, 10:16

Olá, esse é o meu primeiro tópico.

---

Estou utilizando uma classe basicona ( prg ) em meu sistema.

Tentei criar uma função que altere a propriedade de um textbox
de um form.

E descobri que não sei como "acessar" esse elemento a partir
da classe.

thisform ? this ? nome_do_form.elemento ? realmente não consegui.

Essa deve ser realmente muito elementar, mas estou apanhando...

---

Abraço.

avatar
halisson
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por marcio em 26/11/2010, 11:23

Olá halisson, seja bem vindo e pode postar a vontade, o pessoal ajuda e muito aqui.

Desta forma que você fez eu não sei te ajudar, mas uma idéia que eu uso pra padronizar meus textbox, button e outros objetos, é editá-los da forma que eu quero, e depois salvar como classe, depois utilizo os objetos da minha classe ao invés da padrão do VFP.

Abraço
avatar
marcio
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por Marcos Guedes em 26/11/2010, 11:27

[Você precisa estar registrado e conectado para ver este link.] escreveu:Olá, esse é o meu primeiro tópico.

---

Estou utilizando uma classe basicona ( prg ) em meu sistema.

Tentei criar uma função que altere a propriedade de um textbox
de um form.

E descobri que não sei como "acessar" esse elemento a partir
da classe.

thisform ? this ? nome_do_form.elemento ? realmente não consegui.

Essa deve ser realmente muito elementar, mas estou apanhando...

---

Abraço.

Você poderia postar o código de como estais tentando fazer?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por halisson em 26/11/2010, 12:48

-
Olá Marcos,

não estou com o script no momento aqui, mas a idéia é a seguinte:

suponhamos que uma classe tenha sido chamada a partir do init de um form.

tipo:

Código:

SET PROCEDURE TO SYS(2003)+"\CLASS\NEGOCIO.PRG" ADDITIVE
PUBLIC ONEG
ONEG=NULL
ONEG=NEWOBJECT("ONEGOCIO")

então, de algum lugar do form ( ao pressionar um botão por exemplo ),
envio um parâmetro string com o conteúdo: "teste" para uma determinada
função da classe que irá fazer uma rotina com essa string.

o que não consigo fazer é com que essa função,
que já recebeu a string via parâmetro, altere por exemplo,
a propriedade .value de um textbox lá do form, com o valor
desse parâmetro.

ou seja, a partir de uma classe instanciada, conseguir
acessar um elemento de um form e alterar propriedades,
como .setfocus, .value, etc.

entendeu a idéia da questão?

abraço.
-
avatar
halisson
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por Marcos Guedes em 26/11/2010, 14:09

Da forma como está você está utilizando um objeto público, o que não é aconselhável.
Para ter acesso ao objeto criado - em qualquer lugar do form - você poderá criar uma propriedade para o form, e esta propriedade criada será instância de sua classe.

Exemplo:
Código:
SET PROCEDURE TO SYS(2003)+"\CLASS\NEGOCIO.PRG" ADDITIVE
THISFORM.ONEG=NULL
THISFORM.ONEG=NEWOBJECT("ONEGOCIO")



E para você poderá alterar qualquer propriedade de um controle do form (no seu caso, um textbox), acrescente um parâmetro ao seu método, o qual será o controle desejado.

Você teria algo do tipo:
Código:
DEFINE CLASS nomeClasse AS CUSTOM

PROCEDURE alteraValorTextbox AS VOID
LPARAMETERS controle AS TEXTBOX, novoValor AS STRING
m.controle.VALUE = m.novoValor
m.controle.REFRESH()
ENDPROC

ENDDEFINE

E poderia chamar o método a partir de um botão, da seguinte forma:
Código:
OBJ=NEWOBJECT('nomeclasse', 'teste.prg')
obj.alteraValorTextbox(thisform.text1,"novo valor")

Ou utilizando a propriedade instanciada no INIT do seu form:
Código:
THISFORM.ONEG.alteraValorTextbox(thisform.text1,"novo valor")

Resolve?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por halisson em 29/11/2010, 10:55

-
Exatamente Guedes. Excelente implementação. Obrigado.
Márcio, obrigado pelas boas vindas e pela tentativa de ajuda,
mas a solução do Guedes foi mais acertada.

Ah Marcos, e sobre o "PUBLIC" que você comentou não ser aconselhável,
pois bem, já que a Microsoft criou esse escopo para o Fox, seria
muito educativo não apenas "informar" o não aconselhamento,
mas seria muito mais enfático um exemplo prático disso.

você pode exemplificar uma situação "perigosa" nesse tipo de escopo ?
e o motivo do mesmo existir numa linguagem de programação ?

creio que o google certamente daria essa resposta, mas enfim,
não vejo problemas em você mesmo esclarecer esse assunto.

abraço, e mais uma vez, obrigado.
-
avatar
halisson
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Resolvido Re: Classe alterando elementos do form

Mensagem por Marcos Guedes em 29/11/2010, 11:13

[Você precisa estar registrado e conectado para ver este link.] escreveu:você pode exemplificar uma situação "perigosa" nesse tipo de escopo ?
e o motivo do mesmo existir numa linguagem de programação ?
Situação perigosa: Imagine que você começa a criar variáveis com o mesmo nome das que já foram declaradas como públicas.
Você certamente passará um bom tempo para descobrir o problema causado em seu programa.
Smile

Quanto às vantagens...
Talvez seja interessante utilizar pelo menos uma para referenciar um único objeto de grande importância para a aplicação.

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum