A versão final de "Delphi: Complete Chinese" (publicada na 37ª edição da "Home Computer", perdoe-me pela nova garrafa!)
Xi'an Liang Ming
-------------------------------------------------- ----------------------------------
Antes de escrever este artigo, tive um pensamento sujo: não devo "vazar" esse truque para outras pessoas. No entanto, minha consciência imediatamente me disse que não devo ter essa ideia, então escrevi imediatamente! como um complemento ao último artigo "Delphi: Complete Chinese", e pode ser considerado uma recompensa para minha própria consciência!
Agora vamos direto ao ponto: como todos sabem, quando lidamos com as próprias mensagens do Delphi (refiro-me aqui a todas as mensagens do próprio Delphi, incluindo caixas de diálogo do sistema Delphi, prompts de exceção, etc.), a abordagem geral que adotamos é "ficar à frente do Delphi", ou bloquear a função do sistema e usar nossa própria maneira de lidar com isso, a fim de fornecer aos usuários o idioma chinês puro A finalidade do ambiente No entanto, tudo isso só pode ser previsto subjetivamente com base na experiência existente do programador. Devido à complexidade do sistema e às nossas próprias limitações de nível, os resultados disso serão inevitavelmente um e outro! pode ocorrer a qualquer momento e pode não ser resolvido. Não é tratado completamente ou nem mesmo é tratado. Imagine: se alguns prompts em inglês aparecerem durante o uso do usuário, a "nota" do seu programa será bastante reduzida?
Portanto, devemos também procurar um método mais ideal e completo. Pelo menos, quando aparecem bugs no programa, os usuários comuns podem entender os prompts (isso não significa que você pode fazer o que quiser, felizmente, após a repetição do autor). testes, foi Encontre outra estratégia infalível. Por favor, ouça-me explicar abaixo (somente se a sua versão do Delphi tiver o código-fonte da VCL - ou seja, a versão profissional ou empresarial):
0. Faça backup do código-fonte VCL do Delphi (o diretório geralmente é "X:PRogram FilesBorlandDelphi4SourceVcl"). Claro, conforme necessário, você também pode fazer backup de apenas alguns arquivos que precisamos modificar;
1. Abra BdeConst.pas, Consts.pas, BdeConst.pas, DbConsts.pas, midconst.pas, mxConsts.pas, OleConst.pas, WebConst.pas e outros arquivos de unidade no diretório VCL no ambiente Delphi. arquivos são definidos
Define as constantes utilizadas pelo Delphi;
2. "Traduzir" as constantes de string definidas pelo Delphi para nossa grande língua materna - o chinês;
3. Após a conclusão do trabalho de "tradução", salve-o de acordo com o nome do arquivo original;
4. Agora vamos testar nossos resultados, criar um novo projeto, escrever deliberadamente algum código que causará prompts do sistema e, antes de compilar, ir para a opção Caminho de pesquisa na página Diretórios/Condicionais da caixa de diálogo Opções do projeto Delphi e adicionar uma pesquisa Caminho (ou seja, o diretório onde acabamos de modificar a unidade constante), confirme e saia;
5. Basta observar o seu nível de tradução em inglês!
Perceber:
① Se a sua versão for Delphi 3, altere o caminho acima de acordo, e Diretórios/Condicionais na caixa de diálogo Opções do Projeto é Diretórios;
② Esta alteração nas condições de compilação é válida apenas para este projeto. Ela precisa ser redefinida após a criação de um novo projeto. Se você quiser corrigi-la de uma vez por todas, siga-me:
Execute o programa de edição de registro do Windows Regedit.exe, abra HKEY_CURRENT_USER->Software->Borland->Delphi->4.0->Library e adicione "$(DELPHI)SourceVCL".Ok para um dos valores de string para "Caminho de pesquisa". , o objetivo foi alcançado!
A seguir está a mensagem enviada pela função após o autor modificar as constantes da função MessageDlg no arquivo da unidade Consts.pas. Desta vez, o que vemos não é mais uma caixa de mensagem meio inglesa e meio yang. , bonito o suficiente?
...
Começar
MessageDlg('Como você se sente?'+#13#10#13#10+
'Aqui eu traduzo "SMsgDlgInformation" como 'mensagem';'+#13#10+
'O resultado da tradução de "SOKButton" como 'OK'!',
mtInformações,[mbok],0);
Fim;
...
****Insira a Figura 4 aqui****
A ação acima é um pouco honesta?! Na verdade, podemos personalizar essas constantes de acordo com nossos próprios desejos (desde que a Inprise concorde) para obter um efeito especial. Por exemplo, podemos traduzir "SMsgDlgInformation" para o título do seu software ou. seu próprio nome de estúdio, etc. Desta forma, sua personalidade extraordinária será totalmente exibida!
Essa é toda a experiência e habilidades que o autor planeja apresentar sobre o "Chinês Completo" do Delphi (colocarei todo esse conjunto na minha página pessoal depois de explicar os dois programas que tenho, por favor vá lá então) Abaixo, claro, ligando). é "completamente chinês" me faz corar, mas eu realmente espero que o Inprise acabe com a era de "invejar" os programadores VB o mais rápido possível!
Ainda existem alguns problemas, por exemplo: o ambiente Delphi está em inglês, os prompts e botões de visualização do relatório também estão em inglês, etc. Em relação à primeira pergunta, eu pessoalmente acho que não é necessário, porque nenhum programador consegue sequer entender o menu . Se você não entendeu, o objetivo de nossos esforços são os usuários, também existe uma solução para o segundo problema. Este tópico não deveria ser abordado aqui, mas vi muitas pessoas fazendo essa pergunta na Internet, então irei brevemente. discuta isso aqui. Deixe-me terminar este tópico com:
①Desenvolva o conteúdo do QuickRep conforme necessário;
②Imite o modo de visualização do QuickRep ou personalize você mesmo o QRPreview;
③Atribuir o QRPrinter do QuickRep ao QRPrinter do QRPreview no evento OnPreview do QuickRep
(Por exemplo, QRPreview1.QRPrinter:=Quickrep1.QRPrinter;) QRPreview pode substituir QuickRep
modo de visualização.
Moderador: Liang Ming
Data: 01/03/1999
E-mail:[email protected]