the one Posted May 15, 2009 at 09:33 AM Report #264310 Posted May 15, 2009 at 09:33 AM Bom dia a todos. Tenho dois forms em c# , um deles é um form de "Professores" , o outro é de "pesquisa" . O acesso ao form "Pesquisa" está num botão do form "Professores" . Utilizei o seguite codigo : pesquisa pesq = new pesquisa(); pesq.show(); Depois deste codigo , eu acedo ao form "Pesquisa" . Nota que não quero que o form "professores" feche . A pesquisa pode ser devido a muitas coisas , por exemplo apenas para consulta . O que se passa é que , caso eu queira modificar , ao enviar os valores da pesquisa de volta para o form "professores" , ele abre um novo form , em vez de utilizar o form que já está aberto . Alguem que me possa ajudar neste problema ?
TheDark Posted May 15, 2009 at 10:07 AM Report #264324 Posted May 15, 2009 at 10:07 AM Caso queiras modificar o quê exactamente? O código que mostraste não tem nada a ver com o problema que colocaste. O que é que estás a fazer para aparecer um novo form Professores? Desaparecido.
the one Posted May 15, 2009 at 10:14 AM Author Report #264328 Posted May 15, 2009 at 10:14 AM Bom dia . O codigo que coloquei, foi apenas o codigo para abrir o form pesquisa . A minha duvida é como enviar os valores que estão na datagridview para o form que já está aberto , porque como tenho feito, ele abre-me um novo form e fico com dois forms "professores" abertos . Obrigado
amiloM1425 Posted May 15, 2009 at 10:21 AM Report #264329 Posted May 15, 2009 at 10:21 AM Podes passar o teu form professores pelo construtor do form pesquisa e depois fazes uma atribuição a um atributo do form professores. Ou então fazes do teu form pesquisa uma Dialog, que ao clicares em OK no teu form pesquisa vais fazer um get a partir do form professores de um ou mais atributos que tenhas no form pesquisa.
the one Posted May 15, 2009 at 01:16 PM Author Report #264359 Posted May 15, 2009 at 01:16 PM Podes passar o teu form professores pelo construtor do form pesquisa e depois fazes uma atribuição a um atributo do form professores. Ou então fazes do teu form pesquisa uma Dialog, que ao clicares em OK no teu form pesquisa vais fazer um get a partir do form professores de um ou mais atributos que tenhas no form pesquisa. Não entendi :s
amiloM1425 Posted May 15, 2009 at 01:33 PM Report #264366 Posted May 15, 2009 at 01:33 PM Tens o teu form Professores que cria uma nova instância do form Pesquisa, certo? Então, podes passar a instância do form Professores no construtor do form Pesquisa, para que no form Pesquisa possas passar os valores que quiseres para o form Professores. A outra forma que referi é fazeres do teu form Pesquisa um formulário tipo as MessageBox. Que tem um AccepteButton e um CancelButton. Onde no formulário Professores poderias fazer o seguinte: pesquisa pesq = new pesquisa(); if(pesq.ShowDialog() == DialogResult.OK) { prof.qq_coisa = pesq.qq_coisa; //para ires buscar o que quiseres ao form pesquisa pesq.Dispose(); //para "destruires" o formulário pesquisa }
the one Posted May 15, 2009 at 02:01 PM Author Report #264378 Posted May 15, 2009 at 02:01 PM O problema não é em passar os dados . Porque quando o faco, faco-o correctamente . O problema é que quando volto do form pesquisar para o form professores, fico com dois forms professores abertos. O que eu já tinha , e o que não fechei quando fui para o form pesquisa .
amiloM1425 Posted May 15, 2009 at 02:16 PM Report #264386 Posted May 15, 2009 at 02:16 PM Como é que navegas entre os formulários? Provavelmente estás a criar uma nova instância do formulário professores no teu formulário formulário pesquisa.
inginheiiro Posted May 15, 2009 at 02:17 PM Report #264387 Posted May 15, 2009 at 02:17 PM ... se calhar era útil aprendes a programar sem usar o metodo try {very_simple_dummy_problem();} catch {spam(p@p);} se ficas com 2 forms "iguais" abertos , deves rever a tua lógica de instruções. quanto ao "teu problema" em instanciar forms que "ficam zoombies" ... using (pesquisa pesq = new pesquisa()){ if (pesq.showDialog()==DialogResult.OK){ } } ask google http://www.java2s.com/Tutorial/CSharp/0460__GUI-Windows-Forms/CallShowDialogonFormobject.htm I used to have a life ... but i bought a programmable machine in 1982 ...
the one Posted May 15, 2009 at 02:23 PM Author Report #264389 Posted May 15, 2009 at 02:23 PM Como é que navegas entre os formulários? Provavelmente estás a criar uma nova instância do formulário professores no teu formulário formulário pesquisa. Sim crio . neste exemplo é para ir do form professores , para a pesquisa : pesquisa pesq = new pesquisa(); pesq.show(); para ir do form pesquisa de volta para o professores, pretendo fechas o que tenho aberto , e abrir um novo com os valores . Eu já consigo abrir o novo form com os valores, não fecho é o que esta aberto e por isso fico com dois forms "professores" abertos . O que esta preenchido , e o que estava aberto que é o que pretendo fechar.
amiloM1425 Posted May 15, 2009 at 02:39 PM Report #264393 Posted May 15, 2009 at 02:39 PM Se vais do form professores para o form pesquisa e depois voltas novamente ao professores, não precisas de criar um form professores novo. Basta passares os valores para o form professores que já existe e fazeres um Dispose() ao formulário pesquisa.
the one Posted May 15, 2009 at 02:41 PM Author Report #264395 Posted May 15, 2009 at 02:41 PM this.dispose(); e ele vai para o form professores, mas sem o preencher :s
amiloM1425 Posted May 15, 2009 at 02:45 PM Report #264400 Posted May 15, 2009 at 02:45 PM Sim, o que está certo. Agora vamos cair no que eu disse inicialmente. Vais ter de passar a tua instância do form professores para o form pesquisa, no form pesquisa passas os valores para o form professores e então depois fazes então o dispose().
the one Posted May 15, 2009 at 03:27 PM Author Report #264424 Posted May 15, 2009 at 03:27 PM Eu estou a passar da seguinte maneira : NOMEDOFORM.NOMEDOOBJECTO.Databindings.add("text",dataset,(NOMECAMPO)); :s
amiloM1425 Posted May 15, 2009 at 03:31 PM Report #264427 Posted May 15, 2009 at 03:31 PM Ok. Mas estás com a certeza a fazer qualquer coisa como FProfessores professores = new FProfessor(); no teu form Pesquisa, certo? Em vez disso passa a instância do teu form professores para dentro do form pesquisa; pesquisa pesq = new pesquisa(this); pesq.show();
the one Posted May 15, 2009 at 05:09 PM Author Report #264452 Posted May 15, 2009 at 05:09 PM tenho de colocar esse codigo no form de pesquisa ? Não será professores profs = new professores(this); profs.show();
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now