none
ola pessoal gostaria de saber como chamar um form RRS feed

  • Pergunta

  • como no exemplo abaixo gostaria de ler o titulo da janela ativa e chamar um form


    se for possivel responda o topico ou me mande um email

    (felipenickelgyn@hotmail.com)


    terça-feira, 19 de abril de 2016 02:18

Respostas

  • O método InitializeComponent deve ser chamado no construtor do form:

    public Form1()
    {
    	InitializeComponent();
    }

    Tem uma definição de método (GetActiveWindowTitle) dentro de outro, Form1_Load; isso não faz sentido. Defina aquele método dentro do bloco da classe Form1, qualquer lugar entre sua chave "{" abaixo da linha--

    public partial class Form1 : Form

    --e a outra chave, "}".

    No Form1_Load, você faz:

    if (GetActiveWindowTitle() == "texto para comparar")
    {
    	// mostra o form
    }

    Isso deve pegar o título da janela ativa; aí você faz como eu falei acima pra mostrar o outro form.

    Mas a comparação só acontece uma vez, quando o form é aberto; ao iniciar sua aplicação, a janela que estava ativa não estará mais -- o código vai pegar o título do Form1, a janela ativa no momento em que GetActiveWindowTitle é chamado; acho que não é isso que você quer.

    Você devia pôr o código de comparação dentro de um loop. O componente Timer deve servir.

    Seu código tem erros simples de sintaxe; aprenda a sintaxe do C# e entenda as mensagens de erro; comece pelo começo.

    • Marcado como Resposta Marcos SJ terça-feira, 19 de abril de 2016 14:41
    terça-feira, 19 de abril de 2016 13:40

Todas as Respostas

  • Você tem uma função que funciona para obter o título da janela ativa.  Para mostrar um Windows Form, você chama o método Show ou ShowDialog -- Show serve pra mostrar um form normal, ShowDialog mostra o form e não permite usar outros forms abertos da aplicação enquanto ele estiver aberto.

    Form1 form = new Form1 ();
    form.Show (); // ou form.ShowDialog ();

    Substituindo "Form1" no código pelo nome da classe do seu Form.

    terça-feira, 19 de abril de 2016 02:29
  • sim vitor eu intedi mais nao estou conseguindo iserir as variaveis no local correto ou u codigo contem algum erro voce poderia me passsar algum contato seu para que eu possa te mostrar oque esta acontencendo ou se vc poderia me ajudar postando um codigo com evento LOAD do que esteja compilando e fazendo a leitura da janela chamando o form2 

    Obrigado !


    terça-feira, 19 de abril de 2016 03:16
  • sim vitor eu intedi mais nao estou conseguindo iserir as variaveis no local correto ou u codigo contem algum erro voce poderia me passsar algum contato seu para que eu possa te mostrar oque esta acontencendo ou se vc poderia me ajudar postando um codigo com evento LOAD do que esteja compilando e fazendo a leitura da janela chamando o form2 

    Obrigado !


    Poste o código que você tem, ou as partes que têm erro.
    terça-feira, 19 de abril de 2016 03:37
  • AQUI ESTÁ O CODIGO MONTADO COM A FUNÇÃO LOAD QUE EXECUTA NO FORM 

    AGORA GOSTARIA QUE ESTE SCRIPT  PEGASSE O TITULO DA JANELA ATIVA 

    "Maior site de Jogos do Brasil"

    E QUANDO ESSE TITULO ESTIVESSE ATIVO ELE CHAMSSE O FORM2

    
     
    
    


     Obrigado !

    terça-feira, 19 de abril de 2016 12:24
  • Para receber o titulo da janela.

    var suaVariavel = this.Text;

    • Editado Poliana Dias terça-feira, 19 de abril de 2016 13:33
    terça-feira, 19 de abril de 2016 13:33
  • O método InitializeComponent deve ser chamado no construtor do form:

    public Form1()
    {
    	InitializeComponent();
    }

    Tem uma definição de método (GetActiveWindowTitle) dentro de outro, Form1_Load; isso não faz sentido. Defina aquele método dentro do bloco da classe Form1, qualquer lugar entre sua chave "{" abaixo da linha--

    public partial class Form1 : Form

    --e a outra chave, "}".

    No Form1_Load, você faz:

    if (GetActiveWindowTitle() == "texto para comparar")
    {
    	// mostra o form
    }

    Isso deve pegar o título da janela ativa; aí você faz como eu falei acima pra mostrar o outro form.

    Mas a comparação só acontece uma vez, quando o form é aberto; ao iniciar sua aplicação, a janela que estava ativa não estará mais -- o código vai pegar o título do Form1, a janela ativa no momento em que GetActiveWindowTitle é chamado; acho que não é isso que você quer.

    Você devia pôr o código de comparação dentro de um loop. O componente Timer deve servir.

    Seu código tem erros simples de sintaxe; aprenda a sintaxe do C# e entenda as mensagens de erro; comece pelo começo.

    • Marcado como Resposta Marcos SJ terça-feira, 19 de abril de 2016 14:41
    terça-feira, 19 de abril de 2016 13:40