Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

mekanis

Área dinamica

Recommended Posts

mekanis

Boas.

A minha dúvida é a seguinte: queria que numa form houvesse uma zona que se alterava conforme uma opção que escolhia numa combobox ou radiobutton ou seja, se eu escolhe-se por exemplo Coca-Cola aparece-se todos os dados da coca-cola mas se eu escolhe-se Fanta aparece-se na mesma zona as descrições da Fanta e por ai fora...

Estão a perceber?

Cumpz

Share this post


Link to post
Share on other sites
Hellblazer

E esses dados veem de uma BD ou es tu que metes a mão?


There are two ways to write error-free programs; only the third one works.

Share this post


Link to post
Share on other sites
scorch

Isso devia ir com um array, acho eu. :)


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
Hellblazer

Como podes dizer que com um array dá se nao sabes de onde vem a info? ...

A tua info vem de uma base de dados?


There are two ways to write error-free programs; only the third one works.

Share this post


Link to post
Share on other sites
mekanis

Como podes dizer que com um array dá se nao sabes de onde vem a info? ...

A tua info vem de uma base de dados?

Não, pah aquilo da Coca cola foi só um exemplo na realidade até quero que o utilizador escreva umas coisas lá, a minha dúvida é mesmo só fazer com que vários "Mini-Forms" vá apareçam conforme o que o utilizador escolher anteriormente.

Share this post


Link to post
Share on other sites
scorch

E esses dados veem de uma BD ou es tu que metes a mão?

meto-os à mão.

Ele já tinha dito que os metia à mão.


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
Hellblazer
If ComboBox1.SelectedItem = "CocaCola" Then
            textBoxNome.Text = "Coca Cola Pai Natal"
             ElseIf ComboBox1.SelectedItem = "Fanta" 
               textBoxNome.Text = "Fanta Ayeah"
            Else
                 textBoxNome.Text = "Não sei"
        End If


There are two ways to write error-free programs; only the third one works.

Share this post


Link to post
Share on other sites
mekanis

If ComboBox1.SelectedItem = "CocaCola" Then
            textBoxNome.Text = "Coca Cola Pai Natal"
             ElseIf ComboBox1.SelectedItem = "Fanta" 
               textBoxNome.Text = "Fanta Ayeah"
            Else
                 textBoxNome.Text = "Não sei"
        End If

não, não é isso que quero. O que quero é mesmo uma zona que apareça, neste caso muitas, de maneira que o utilizador pretender.

Share this post


Link to post
Share on other sites
Hellblazer

Então peço desculpa mas não estou a entender :S


There are two ways to write error-free programs; only the third one works.

Share this post


Link to post
Share on other sites
mekanis

Então peço desculpa mas não estou a entender :S

Tão espera ai que vou tirar uns prints

Share this post


Link to post
Share on other sites
black_Day

Tens jeito para desenhar com  o paint  ;):D

A minha solucao e que facas:

1. uma textbox (multiline) e uns ficheiros de texto com o que pretendes mostrar.

  quando o radiobutton for clikado metes o kodigo para que o textbox1.text seja o do ficheiro do texto.

2. Faz paineis com as informacoes (um encima do outro) e mete visible=false. Quando o radiobutton for klicado fica panel1.visible=true.

Espero ter ajudado. :wallbash:


"O melhor Hacker e aquele que você não conhece..."

Share this post


Link to post
Share on other sites
mekanis

Tens jeito para desenhar com  o paint  ;):D

A minha solucao e que facas:

1. uma textbox (multiline) e uns ficheiros de texto com o que pretendes mostrar.

quando o radiobutton for clikado metes o kodigo para que o textbox1.text seja o do ficheiro do texto.

2. Faz paineis com as informacoes (um encima do outro) e mete visible=false. Quando o radiobutton for klicado fica panel1.visible=true.

Espero ter ajudado. :wallbash:

Sim eu já tinha feito isso dos paneis mas esperava saber de uma maneira melhor, à semelhança de sites com elementos java em que tudo se mexe por ali fora xD

Há maneira de fazer isso?

Share this post


Link to post
Share on other sites
black_Day

Há maneira de fazer isso?

No Visual Studio 2008 podes inserir javascripts mas nao sei mais xD


"O melhor Hacker e aquele que você não conhece..."

Share this post


Link to post
Share on other sites
Pwyll

Qualquer coisa deste genero ?

ComboBox1.Items.Clear()
ComboBox1.Items.Add("Texto")
ComboBox1.Items.Add("Numeros")

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        ComboBox2.Items.Clear()
        If ComboBox1.Text = "Texto" Then
            ComboBox2.Items.Add("aaaa")
            ComboBox2.Items.Add("bbbb")
        ElseIf ComboBox1.Text = "Numeros" Then
            ComboBox2.Items.Add("1111")
            ComboBox2.Items.Add("2222")
        End If
    End Sub

       

Share this post


Link to post
Share on other sites
mekanis

Qualquer coisa deste genero ?

ComboBox1.Items.Clear()
ComboBox1.Items.Add("Texto")
ComboBox1.Items.Add("Numeros")

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        ComboBox2.Items.Clear()
        If ComboBox1.Text = "Texto" Then
            ComboBox2.Items.Add("aaaa")
            ComboBox2.Items.Add("bbbb")
        ElseIf ComboBox1.Text = "Numeros" Then
            ComboBox2.Items.Add("1111")
            ComboBox2.Items.Add("2222")
        End If
    End Sub

       

Nepia nada a haver, viste a imagem?

Share this post


Link to post
Share on other sites
jpaulino

Nepia nada a haver, viste a imagem?

E qual é o problema de usares containers (paineis) ?

O que não tem lógica é como estás a fazer ... o que é "normal" nesses casos, é criares à direita um menu (que pode ser uma listview com imagens, uma treeview, uma listview, etc, etc) e quando carregas actualiza-te.

Por exemplo vê no menu Tools - Options do Visual Studio o exemplo de um menu com a actualização à direita.

No Visual Studio 2008 podes inserir javascripts mas nao sei mais xD

Só se for ASP.NET ;)

Share this post


Link to post
Share on other sites
mekanis

O problema dos paineis é que se torna muito confuso, e pensei que houvesse uma maneira mais facil de fazer.

o que é "normal" nesses casos, é criares à direita um menu (que pode ser uma listview com imagens, uma treeview, uma listview, etc, etc) e quando carregas actualiza-te.

Por exemplo vê no menu Tools - Options do Visual Studio o exemplo de um menu com a actualização à direita.

Explica la isso melhor sff.

Share this post


Link to post
Share on other sites
jpaulino

O problema dos paineis é que se torna muito confuso, e pensei que houvesse uma maneira mais facil de fazer.

É muita informação diferente ?

Share this post


Link to post
Share on other sites
jpaulino

Então podes fazer assim ... crias diversos forms com toda a tua lógica. Depois colocar uma lista à direita (pode ser uma listbox) com todas as tuas opções. À esquerda colocas apenas um painel.

Depois, quando clicas num item da listbox, verificas qual é o form que deves colocar no painel e fazes mais ou menos isto:

     

       Dim frm As FormOpcaoA
       With frm
            .TopLevel = False
            .FormBorderStyle = Windows.Forms.FormBorderStyle.None
            .Dock = DockStyle.Fill
            .Show()
        End With
        Panel1.Controls.Add(frm)

Podes também obtar por criares usercontrols e fazer o mesmo.

Share this post


Link to post
Share on other sites
mekanis

Então podes fazer assim ... crias diversos forms com toda a tua lógica. Depois colocar uma lista à direita (pode ser uma listbox) com todas as tuas opções. À esquerda colocas apenas um painel.

Depois, quando clicas num item da listbox, verificas qual é o form que deves colocar no painel e fazes mais ou menos isto:

   

       Dim frm As FormOpcaoA
       With frm
            .TopLevel = False
            .FormBorderStyle = Windows.Forms.FormBorderStyle.None
            .Dock = DockStyle.Fill
            .Show()
        End With
        Panel1.Controls.Add(frm)

Podes também obtar por criares usercontrols e fazer o mesmo.

Obrigado jpaulino, vou tentar e depois digo-te qualquer coisa.

Share this post


Link to post
Share on other sites
mekanis

Obrigado jpaulino, vou tentar e depois digo-te qualquer coisa.

Não consigo chamar um formulario com o evento ComboBox1_SelectedIndexChanged, o erro que dá é:

"prof is a type and cannot be used as an expression", expliquem-me por favor o significado disto é que gostava mesmo que fosse com este evento da combobox

nota: prof é o nome o usercontrol.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.