Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
21 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 21 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
ListBox

23/5/2017, 10:37 por Rosangela Pires

Ola Amigos.

Para se movimentar na grid com as setas colocamos no Metodo AfterChange da grid …

Comentários: 0

TRY BEGIN E FLOCK()

17/4/2017, 10:32 por AJC

Pessoal estou tendo alguns problemas de gravação em rede, estou usando
try begin, mas vi algo na …

Comentários: 0

Exportar Dados Campo Memo Tabela DBF

10/4/2017, 10:28 por fcampos

Olá bom dia.

Estou tentando exportar os dados de algumas tabelas em formato dbf pelo foxpro.
O …

Comentários: 2

Função EVL()

8/4/2017, 12:18 por Clebervfp

Bom dia a todos.
Vim compartilhar de uma Função do próprio VFP que me benefício muito.
Função …

Comentários: 0

COMO BLOQUEAR REGISTRO OU TABELA NO VISUAL FOXPRO PARA GRAVAÇÃO EM REDE

3/4/2017, 10:29 por AJC

Pessoal estou tendo um problema que acontece sempre busco na minha tabela de clientes o ultimo …

Comentários: 2

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

Os nossos membros postaram um total de 49 mensagens em 26 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