Suporte Multi-linguas

Artigos, manuais, conselhos e dicas sobre programação em AutoHotkey

Moderator: Gio

Post Reply
User avatar
juanmuscaria
Posts: 65
Joined: 29 Oct 2017, 10:53
Location: Brazil
Contact:

Suporte Multi-linguas

Post by juanmuscaria » 23 Dec 2017, 13:01

Olá a todos,eu estava com problemas para fazer um programa com suporte multi-línguas e descobri uma forma de fazer meu programa ter suporte a isso com essa função que criei usando iniRead:

Code: Select all

LoadLang(lang,Chave,palavra)
{
        ;o lang seria o arquivo que contem as palavras do seu app
	IniRead, returnLang,%lang%.ini, %Chave%, %Palavra%
	return returnLang
}
Exemplo de arquivo de lang (o que eu fiz para meu app)
Inglês:

Code: Select all

[launcher]
LOGO1=New update available, Download now?
ERROR1=Warning:This application is in beta. Several bugs can occur
ERROR2=Send a comment on some bug or game ideas and feature ideas
1=Applications:
2=Auto Farm (GT)
3=SpamMEr (U)
4=PDoor Bruteforce(GT)
5=Beta Applications:
6=Grass Auto-Farm (GT|Beta)
7=Quick Settings:
8=Lang:
9=Apply
10=Send a comment
[af]
1=How long to hold Left|Right arrow:
2=Amount of hits:
3=Left or Right:
4=Do not use the physical mouse
5=Get Mouse position
6=Save
7=Help
[spam]
ERROR1=Auto-Spam should use enter to work
1=Type what will be pasted:
2=F1:
3=F2:
4=F3:
5=F4:
6=F5:
7=Save
8=Help
9=Beta options
10=Auto spam (This will use the F1 and F2 Slots)`nF1 to start|F6 to pause
11=Typing delay(letter typed every millisecond)
12=Do not press enter
13=Wait time between spam(millisecond)
[apd]
ERROR1=No remaining attempts
1=Start number:
2=Stop at:
3=Delay (recommended:500 or 2000)
4=Save
5=Help

Português:

Code: Select all

[launcher]
LOGO1=Novo update disponível, Baixar agora?
ERROR1=Aviso:este aplicativo está em versão beta.Podem ocorrer vários bugs
ERROR2=Enviar um comentário sobre algum bug ou ideias de jogos e ideias de funções.
1=Programas:
2=Auto Farm (GT)
3=SpamMEr (U)
4=PDoor Bruteforce(GT)
5=Programas em Beta:
6=Grass Auto-Farm (GT|Beta)
7=Opções rapidas:
8=Lang:
9=Aplicar
10=Enviar um comentário
[af]
0=en
1=Quanto tempo segurar o botão de andar:
2=Quantidade de hits:
3=Andar para a Esquerda ou Direita:
4=Usar mouse virtual(send click)
5=Pegar a posição do mouse(para o send click)
6=Salvar
7=Ajuda
[spam]
ERROR1=Auto-Spam precisa usar o enter para funcionar
1=Digite o que vai ser colado:
2=F1:
3=F2:
4=F3:
5=F4:
6=F5:
7=Salvar
8=Ajuda
9=Opções Beta
10=Auto-Spam (Ele usa o slot do F1 e F2|Use F1 para iniciar e F6 para pausar)
11=Delay de digitação(letra a cada milisegundo)
12=Não aperta enter
13=Delay entre os spams(milisegundo)
[apd]
ERROR1=Sem tentativas restantes
1=Número de inicio:
2=Parar em:
3=Delay (recomendo 500 ou 2000)
4=Salvar
5=Ajuda
Aqui um exemplo de como usa essa função

Code: Select all

;ele vai pegar o que estiver na chave ERROR1 no arquivo en.ini
lang := LoadLang(en,"launcher","ERROR1")
MsgBox %lang%
Tomara que tenham gostado dessa explicação :)
User avatar
Gio
Posts: 1247
Joined: 30 Sep 2013, 10:54
Location: Brazil

Re: Suporte Multi-linguas

Post by Gio » 24 Dec 2017, 12:10

Show!

Simples e efetivo. Com um arquivo de linguagem externo você não precisa criar um monte de condicionais no código programa e fica mais fácil editar as mensagens, já que não tem que procurá-las no meio do código.

Obrigado por compartilhar :thumbup:
Post Reply

Return to “Tutoriais”