Autor: Yu Weineng
Data: 18 de fevereiro de 2004
O Delphi não oferece muito suporte para vários idiomas, dificultando a internacionalização de aplicativos. Ao desenvolver um aplicativo internacional, você encontra muitas dificuldades. O próprio autor participou na elaboração de um pedido de declaração aduaneira electrónica no início de 2001. O programa será utilizado na China, nos Estados Unidos, em Hong Kong e em Taiwan, e planeia ser utilizado no Japão e na Coreia do Sul no futuro. Neste momento, o aplicativo deve ser capaz de inserir texto em vários idiomas ao mesmo tempo e inserir vários idiomas na mesma plataforma operacional. Como eu tinha acabado de começar a usar o Delphi na época, fiz muitos desvios na escrita multilíngue. Delphi não se esforçou muito no desenvolvimento multilíngue, por isso é muito difícil desenvolver programas multilíngues. Já perguntei aos engenheiros da Borland sobre questões multilíngues, mas todas foram vagas. Parece que para realizar essa função, você só consegue encontrar um caminho sozinho. O Microsoft® Word me dá um vislumbre de esperança no multilinguismo porque ele pode inserir e imprimir texto em vários idiomas.
Análise: 1. No desenvolvimento de aplicativos, se o aplicativo deseja implementar vários idiomas, ele deve usar Unicode, pois somente o Unicode pode acomodar todos os caracteres e seus códigos internos do mundo ao mesmo tempo, e pode implementar vários idiomas no mesmo formulário. 2. É limitado pela plataforma operacional. Conforme mencionado acima, somente o Unicode pode resolver o problema de coexistência de vários idiomas, portanto a plataforma operacional deve usar Unicode como código interno básico. A plataforma operacional da Microsoft é suportada apenas pelo Windows NT? e versões posteriores, portanto, o conteúdo a seguir é baseado principalmente na plataforma de tecnologia kernel do Windows NT? Quanto ao motivo pelo qual o Microsoft Word pode implementar vários idiomas no Windows 9x, ainda não sei quais truques inteligentes ele criou. Devido às falhas inerentes ao Windows 9x e ao Windows 9x, não planejo. pensar muito sobre maneiras de resolver isso no Windows 9x. Provavelmente também existe uma razão pela qual a Borland não trabalha muito com vários idiomas. 3. O banco de dados da aplicação deve suportar códigos internos Unicode. O conteúdo inserido pelo aplicativo será armazenado no banco de dados, portanto, o banco de dados deve usar um banco de dados que suporte Unicode, caso contrário, os dados armazenados não serão capazes de ler caracteres multilíngues (ou será necessário muito trabalho para concluir ). Atualmente, os principais bancos de dados que suportam totalmente Unicode incluem Microsoft access 2000, SQL server 2000 e Oracle 9x devem ser customizados e instalados e o código interno deve ser selecionado como Unicode ao criar o banco de dados. 4. Os aplicativos geralmente são divididos em interfaces de entrada e relatórios. Em outras palavras, o aplicativo deve ser capaz de inserir, exibir e imprimir texto em vários idiomas (acomodando Tradicional, Simplificado, Japonês, Coreano, etc.). Método de entrada Unicode para o aplicativo. Claro, o aplicativo não precisa usá-lo. No entanto, durante o teste, vários idiomas devem ser inseridos no mesmo gabinete de entrada de formulário para provar a viabilidade do programa. Atualmente, o único método de entrada que pode converter livremente entre fontes tradicionais, simplificadas, inglesas, japonesas e coreanas é o método de entrada Microsoft Pinyin. Após análise, a aplicação deve fazer os preparativos acima que usei: 1. Microsoft? Windows 2000 PRfessional2 banco de dados Microsoft? A ferramenta de desenvolvimento é Broand Delphi 7. 4. Usei TNTComponent para controle de interface. controle para suportar Unicode é um controle de código-fonte aberto que todos podem usar e alterar com confiança. Você pode acessar: http://home.ccci.org/wolbrink para baixar e instalar (porque seu uso é igual ao controle básico, portanto o uso não será explicado). 5. Eu uso o Qreport 3.6.2 para o controle de relatório, porque ele não suporta Unicode, então reescrevi seu código para que ele possa suportar vários idiomas. Este artigo fornece download do código de patch (Http://happy.gsidc.com). (Como Qreport é um controle que vem com o Delphi no Delphi 5 e 6, este artigo pressupõe que os leitores já possam usá-lo para imprimir relatórios). 6. Método de entrada Microsoft Pinyin. Você pode baixá-lo gratuitamente no site da Microsoft. (Observação: se você quiser japonês, etc., precisará baixar o pacote de idiomas)3. Crie um novo TntForm1 e adicione um gabinete de entrada TntEdit e um botão. Após instalar o TNTComponent, a.) A opção TntForm (Unicode) aparecerá na nova página da aplicação. Crie um novo TNTFrom1 para controlar melhor o Unicode. b.) Uma nova página de grupo de controle TNT aparecerá no painel de controle do Delphi. No desenvolvimento de aplicações multilíngues, é recomendado usar controles neste tipo de painel sempre que a entrada ou exibição Unicode for necessária. 4. Crie um novo formulário de relatório e adicione um QRLabel. 5. Escreva o código do formulário. Sistema duplo TntButton1, formulário de relatório de usuários em TntForm1 e insira o código a seguir. 6. Resultados de testes e operação. No programa eu insiro cinco fontes de idiomas. Como segue: a.) O caractere "国" está em chinês tradicional b.) O caractere "国" está em chinês simplificado c.) O caractere "村" é exclusivo de Hong Kong e não está no caractere chinês tradicional. biblioteca. Deve ser inserido usando um método de entrada como Cangjie. d.) "China" é inglês e.) "のKindergarten ひまわり" é um programa de fontes japonês. Acontece que o aplicativo realizou as funções de entrada, exibição e impressão de aplicativos multinacionais. Aqui está outro exemplo de leitura e gravação de dados (várias fontes nacionais) no banco de dados. Baixe o exemplo 1