COMO ACESSAR TEXTBOX DE UMA FUNCAO STATIC?

LUIS.HERRERA 21/11/2012 16:59:41
#414548
Bem a classe do AJSO não funcionou, pois os botões que acionam os métodos não estão no form filho, mas sim no form MDI para acionar os recursos do filho.

Implementei a solução do OCELOT (interface) e ficou perfeito. Agora está tudo funcionando como eu preciso.

Obrigado a todos pela grande ajuda.

Nota: Ocelot se puder enviar um exemplo dessa implementação que citou do menuStrip e Toolstrip eu agradeço, pois vai ser muito útil também.

AJSO 21/11/2012 22:04:15
#414558
Caro LUIS HERRERA

Citação:

Alessandro e OCELOT - acredito que ambas as soluções de vocês são excelentes e resolvem muito bem meu problema. Porém seria possível vocês explicarem qual a difernça entre as duas soluções, usar Interface ou Classe Intermediária?
Importanta: Não quero criar nenhum problema entre os dois colegas, de qual solução é melhor etc.., mas como são duas formas bem diferentes, acredito que haja situações onde um seja melhor e em outras a segunda seja mais interessante. Assim poderia saber quando empregar uma ou a outra.



sem problemas, apenas para esclarecimento se ver o meu exemplo coloquei sua função em uma classe onde ela será herdada pelos seus forms ou outras classes não ficando incluida a um formulário pois se a necessidade utilizar outra vez em um outro formulário basta apenas importala para seu método e não sendo necessário replicar.

Dessa forma fica seu aplicativo caso necessário mudança nessa função ela será para todos os lugares onde você a utilizar............

Retirando assim o temido problema de REDUNDÂNCIA de processos/funções............

O que fiz basicamente é OOP.

LUIS.HERRERA 26/11/2012 10:39:09
#414781
AJSO então, eu tentei fazer isso e não consegui.

Veja....

Terei por exemplo uma função (Método) na classe separada que irá acionar os controles do form1 por exemplo
No MDI Pai eu incluí a chamada dessa função no botão da barra de atalho, porém ele não permitiu acessar os controles do form1.

Posso ter feito algo errado, mas segui o modelo que mandou e não deu certo. Já com a interface funcionou.
OCELOT 26/11/2012 11:31:43
#414788
Não testei aqui o exemplo do Alessandro, mas pelo que vi do código ele fez mais um exemplo de como usar funções estáticas reusáveis em uma classe externa para limpar campos por exemplo, o meu exemplo era do uso de botões do toolbar no form pai chamando funções no form filho.

Quanto ao exemplo do Merge não tive tempo de fazer ele antes, coloquei ele em anexo agora. O MenuStrip é bem simples, ele é automático só precisando que o menu esteja definido como o MainMenuStrip do Form, já os ToolStrip precisa ser chamado manualmente o merge, é bem simples e eu fiz no exemplo usando uma interface para ficar mais fácil de dizer quando o form tem toolbar ou não.

Abra os forms pelo menu Janelas e repare como os toolbars e menus que estão disponíveis mudam quando o foco do form filho muda, mostrando os menus que são do pai mais os que são do filho com o foco, e os eventos funcionam normalmente onde foram declarados. Repare também que quando está com o foco no frmFilho1 aparece um novo item dentro do [Ô]Outro Menu[Ô]

Detalhe que tem que mudar o Visibility do Menu e do Toolbar nos forms vilhos para False ou então eles aparecem vazios dentro do filho quando se executa o programa.
LUIS.HERRERA 26/11/2012 11:48:25
#414789
Ocelot bom dia.

Fui abrir o projeto e apresentou dois problemas:

Os forms não abrem pois dá esse erro:
Type System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a cannot be located.

Já a Classe IMergeMenu não está presente no projeto.
OCELOT 26/11/2012 12:05:21
#414790
Só pra eu saber, qual versão do VS.Net você usa? Eu fiz esse exemplo no 2010 com Framework 4, acho que pode dar erro se você estiver usando uma versão mais antiga, ja o IMergeMenu eu tinha tirado mesmo pois não precisa dele, só ficou errado no projeto que fiz upload

De qualquer forma tirei o IMergeMenu do projeto e converti ele para o Framework 3.5, o que deve deixar o projeto abrir até no VS.Net 2008
AJSO 26/11/2012 12:41:30
#414791
Caros Colegas

Citação:

Não testei aqui o exemplo do Alessandro, mas pelo que vi do código ele fez mais um exemplo de como usar funções estáticas reusáveis em uma classe externa para limpar campos por exemplo, o meu exemplo era do uso de botões do toolbar no form pai chamando funções no form filho.



Este projeto que fiz esta em VS2010 e Framework 4.0.................

Se há necessidade de Downgrade me avisa pois faço em Vs2008 ou VS2005 com os respectivos Framework 4.0 3.5 3.0 2.0......


Boa Sorte
LUIS.HERRERA 26/11/2012 14:41:59
#414795
Ocelot fantástico!
Vou estudar e será de grande ajuda, obrigado.

AJSO fiz a alteração direto no seu projeto, criando um novo botão na toolbar do MDI e ajustando os eventos e códigos, e então funcionou perfeitamente também. Acho que fiz algo errado ao implementar no meu sistema. Vou rever e será muito útil esse uso genérico. Obrigado.

PS. Num só tópico [Ô]matei 3 Leões[Ô] (rs).

Infelizmente não tenho como repartir a pontuação do tópico, só permite uma pessoa, então vou ser justo e seguir o seguinte critério:

Primeiro que respondeu e quem sanou dois problemas no mesmo tópico que foi o OCELOT. Desculpe AJSO, mas a limitação é do site que só permite selecionar uma resposta.

Abraço a todos.
Página 2 de 2 [18 registro(s)]
Tópico encerrado , respostas não são mais permitidas