Jump to content
Bessa

Form Bloqueia & YesNo Não Funciona

Recommended Posts

Bessa

Olá Colegas! :D

Já andei a pesquisar e não consigo resolver estes problemas porque...são estranhos!!! :nono1:

Tenho lá, pensava eu, os códigos correto, mas por razão que aparentemente não vejo nem sei, não funciona!

E como são tão estranhos, nem dá para explicar BEM por palavras. Como tal, fiz um pequeno vídeo (30s) a mostrar estes 2 erros:

LINK

O 1º ERRO:

FOI RESOLVIDO!!!

E Não sei porque razão, a Form Bloquei ao fim de uns clicks...Aqui fica o Código da Form:

LINK

Já estive aqui a pesquisar e inventar e não consigo resolver.  :thumbsup: São mesmo estranhos!

##########

O 2º ERRO:

FOI RESOLVIDO!!!

- A pessoa ao adicionar de um Form para a outra, aparece 2 campos para preencher. Se estiverem preenchidos, ele adiciona, se algum deles não estiverem preenchidos, dá o aviso que não estão e pergunta se mesmo assim quer avançar ou não.

Se for Sim, ele adiciona os campos preenchidos, e o que não estiver, adiciona "0" (Ainda tenho de fazer isto, Mas primeiro estava a tentar resolver este problema). Caso não queira avançar fica na mesma Form.

Mas não está a acontecer.

Se eu colocar o "If Windows.Forms.DialogResult.No" em primeiro lugar, carregue-se SIM ou NÃO, ele não avança. Se coloco o "If Windows.Forms.DialogResult.Yes" em primeiro lugar, carregue-se SIM ou NÃO, ele avança!

O Código que coloquei:

If TextBox1.Text <> "" And TextBox2.Text <> "" Then

            assferrcorte.Comprimento_ferr_corteListBox.Items.Add((TextBox1.Text))
            assferrcorte.Diametro_ferr_corteListBox.Items.Add((TextBox2.Text))

            Me.Close()

        Else

            If TextBox1.Text = "" Or TextBox2.Text = "" Then
                MsgBox("Não preencheu todos os campos! Deseja avançar?", MsgBoxStyle.YesNo, "Questão")
                If Windows.Forms.DialogResult.No Then
                    'NÃO FAZ NADA
                End If
            Else

                If Windows.Forms.DialogResult.Yes Then

                    assferrcorte.Comprimento_ferr_corteListBox.Items.Add(TextBox1.Text)
                    assferrcorte.Diametro_ferr_corteListBox.Items.Add(TextBox2.Text)

                    Me.Close()
                End If
            End If
        End If

Entretanto, vou pesquisando e  inventando a ver se encontro alguém também com estes erros estranhos... :D

Share this post


Link to post
Share on other sites
Andrepereira9

O teu problema deve de estar aqui neste evento. Sempre que o Index da Operacao_artigoListBox altera, voltas a preencher a Fase_artigoListBox. è por isso que ela nunca altera o valor seleccionado.

Private Sub Operacao_artigoListBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Operacao_artigoListBox.SelectedIndexChanged

        Dim cn As New System.Data.OleDb.OleDbConnection
        Dim cm As New System.Data.OleDb.OleDbCommand

        cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & Application.StartupPath & "\bdfelino.accdb"

        cm.Connection = cn

        cm.CommandText = "Select * From associar_ferramentas Where artigo_escolhido Like '" & Artigo_escolhidoComboBox.Text & "%'"

        Dim Adp As New OleDbDataAdapter(cm)
        Dim Dt As New DataTable

        Adp.Fill(Dt)

        Fase_artigoListBox.DataSource = Dt
        Fase_artigoListBox.DisplayMember = "fase_artigo"
        Fase_artigoListBox.Refresh()


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
Bessa

🤔

Mas eu preciso mesmo desse código. Digamos que até é mesmo o crucial para essa form. :thumbsup:

Mas enquanto o Artigo está inalterado (só se altera se eu for à combo) não percebo como ele não consegue mudar o SelectedIndex.... 🤔

Share this post


Link to post
Share on other sites
Andrepereira9

Experimenta por no final desse codigo, o Fase_artigoListBox.SelectedIndex = Operacao_artigoListBox.SelectedIndex


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
Bessa

Não funciona. :D

Coloquei debaixo daquele código, experimentei no fim de todo código da Form e nada. :D E Mal clico em algum Index/registo da ListBox da Fase, a Form fica logo bloqueada (Como está no vídeo). :thumbsup:

Muito estranho. :nono1:

Obrigado por estares a tentar ajudar.

Já experimntei até colocar na Propriedade Click, na List da Fase, o código dos SelectedIndex das Lists, mas continua o problema...

Share this post


Link to post
Share on other sites
Andrepereira9

Boas

Para a inserção de dados com Pergunta de Sim ou Não, experimenta assim

If TextBox1.Text <> "" And TextBox2.Text <> "" Then

   assferrcorte.Comprimento_ferr_corteListBox.Items.Add((TextBox1.Text))
   assferrcorte.Diametro_ferr_corteListBox.Items.Add((TextBox2.Text))
   Me.Close()

ElseIf TextBox1.Text = "" Or TextBox2.Text = "" Then
       If MsgBox("Não preencheu todos os campos! Deseja avançar?", MsgBoxStyle.YesNo, "Questão") = MsgBoxResult.Yes Then

          assferrcorte.Comprimento_ferr_corteListBox.Items.Add(TextBox1.Text)
          assferrcorte.Diametro_ferr_corteListBox.Items.Add(TextBox2.Text)
          Me.Close()
       End If
End If


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
Bessa

O 3º Problema Resolvido!

Muito Obrigado! :D

Já só me sobram 2 problemas nesta Form! lol

Entretanto, vou agora pôr aquilo a adicionar o "0". :thumbsup:

Share this post


Link to post
Share on other sites
Andrepereira9

O que acontece é quando clicas num item da Fase_artigoListBox, ele muda o valor da Operacao_artigoListBox. Ao mudar dispara o evento Operacao_artigoListBox_SelectedIndexChanged, que volta a preencher a Fase_artigoListBox. É por isso que a Fase_artigoListBox, não fica com o index selecionado.


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
Bessa

E Não há solução?

Ou algum propriedade da List que sirva para o objetivo, que é a pessoa poder clicar em cima de cada fase sem a For bloquear?

E Mesmo quanto à Form bloquear, não fazes ideia do que será?

Obrigado

Share this post


Link to post
Share on other sites
Bessa

Quanto ao erro da FORM Bloquear, como parece que ninguém sabe, continuei aqui a explorar e lá arranjei uma forma que agora serve para o que quero.

- Coloquei "Enabled=False" a ListBox das Fases, criei um Botão "Ver Fase", e em cada Operação que o User clica, apenas o botão fica Enabled e faz o que quero (Abrir a Form Fases com o Conteúdo devidamente filtrado).

Share this post


Link to post
Share on other sites
Caça

@Bessa, se tens duvidas diferentes abre novos tópicos, não estejas constantemente a alterar o titulo do tópico por cada duvida que te surja :P


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
Bessa

Ok. Assim farei, Obrigado.

Não o quis fazer porque pensei que vocês, moderadores, poderiam não achar muita piada se abrisse como neste caso 3 tópicos (Um para cada dúvida)  :cheesygrin:

Mas como agora só falta uma, realmente não há prob. Obrigado.

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

×
×
  • Create New...

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.