Joca Posted October 17, 2007 at 09:08 PM Report Share #140946 Posted October 17, 2007 at 09:08 PM Gostava de saber qual é o meu erro no seguinte código, já que o mesmo não activa correctamente os botões (quero que o Button1 só fique activo quando seleccionar um dos idiomas no meu Form1 e, que exiba correctamente a mensagem referente ao idioma escolhido). Adicionem o seguinte código a uma Form com uma ComboBox e dois Buttons: Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Button1.Enabled = False ComboBox1.Items.AddRange(New Object() {"Choose Idiom", "English", _ "Français", "Português"}) ComboBox1.SelectedIndex = 0 'Para manter sempre o "Choose Idiom" visível ao iniciar. End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me.DialogResult = Windows.Forms.DialogResult.OK End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.DialogResult = Windows.Forms.DialogResult.Cancel End Sub Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged If ComboBox1.SelectedIndex <> 0 Then Button1.Enabled = True If ComboBox1.SelectedIndex <> 0 And Me.DialogResult = Windows.Forms.DialogResult.OK Then MessageBox.Show("You choose" & ComboBox1.SelectedItem.ToString) ElseIf ComboBox1.SelectedIndex = 0 And Me.DialogResult = Windows.Forms.DialogResult.Cancel Then MessageBox.Show("You have chosen 'CANCEL', so program will not open!" _ & vbNewLine & "You can try later to chose any idiom!", _ "Warning!", MessageBoxButtons.OK) Application.Exit() End If End If End Sub Link to comment Share on other sites More sharing options...
NuGuN Posted October 18, 2007 at 07:00 PM Report Share #141197 Posted October 18, 2007 at 07:00 PM Boas... O que podes fazer se queres fazer um programa multi linguagem é, guardares um ficheiro por exemplo "ling.ini". Imagina que tens um programa com 2 butões (button1 e button2) e queres tornar esses butões "traduziveis", então vais meter no ficheiro o seguinte: [button1] Botão 1 [button2] Botão 2 E depois cada vez que o se abre o programa, ele abre esse ficheiro, lê os dados nesse ficheiro e depois é uma questão de programação... Cumps Link to comment Share on other sites More sharing options...
Joca Posted October 19, 2007 at 09:54 PM Author Report Share #141504 Posted October 19, 2007 at 09:54 PM Boas! Esqueci de postar aqui que já resolvi o meu problema. Era só fazer o seguinte: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Button1.Enabled = False ComboBox1.Items.AddRange(New Object() {"Choose Idiom", "English", _ "Français", "Português"}) ComboBox1.SelectedIndex = 0 'Para mostrar sempre o "Choose Idiom" visível ao iniciar. End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me.DialogResult = Windows.Forms.DialogResult.OK MessageBox.Show("You Choose " & ComboBox1.SelectedItem.ToString) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.DialogResult = Windows.Forms.DialogResult.Cancel MessageBox.Show("You have chosen 'CANCEL', so program will not open!" _ & vbNewLine & "You can try later to chose any idiom!", _ "Warning!", MessageBoxButtons.OK) Application.Exit() End Sub Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged If ComboBox1.SelectedIndex <> 0 Then Button1.Enabled = True End If End Sub Foi distracção da minha parte... Mas, a propósito do que o NuGuN disse: 1.º É melhor usar ficheiros *.ini do que *.txt? 2.º Nunca "trabalhei" com ficheiros *.ini. Onde posso ver informação sobre isso? 3.º Como poderia chamar o texto? Num ficheiro *.txt tenho ideia de como seria feito, mas julgo que o *.ini não poderia exibir o texto directamente num menu ou, num botão... Como ainda não vi nenhum exemplo, não posso afirmá-lo com toda a certeza!... Link to comment Share on other sites More sharing options...
Tiago Salgado Posted October 19, 2007 at 10:49 PM Report Share #141509 Posted October 19, 2007 at 10:49 PM Actualmente a utilização dos Resources faz mais sentido na criação de aplicações multi-lingua. Link to comment Share on other sites More sharing options...
Joca Posted October 20, 2007 at 08:22 PM Author Report Share #141646 Posted October 20, 2007 at 08:22 PM E exemplos sobre como fazer isso usando: -> ficheiros *.ini; -> utilização dos Resources. Basta inventar um exemplo de código simples com um botão ou, então, com um dos itens de um menu... Só para eu ter uma ideia de como se faz!... ? Link to comment Share on other sites More sharing options...
Joca Posted October 28, 2007 at 04:14 PM Author Report Share #143567 Posted October 28, 2007 at 04:14 PM Já solucionei! Usei os resources. Pena foi o tempo usado para descobrir como fazê-lo. Link to comment Share on other sites More sharing options...
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