As CPUs de hoje estão se desenvolvendo cada vez mais rápido. Do 386 e 486 ao Pentium e Pentium II de hoje, a velocidade de desenvolvimento pode ser considerada muito rápida. No entanto, com o rápido desenvolvimento da CPU, o "peso" do software aplicativo também disparou de alguns K ou dezenas de K quando eu estava aprendendo computadores para dezenas de megabytes ou centenas de megabytes hoje, essa mudança até me afetou. Todos ficaram surpresos. O avanço da CPU fez com que as pessoas trabalhassem mais rápido e aumentasse muito a eficiência. Ao mesmo tempo, também desenvolveu o mau hábito das pessoas de “não buscar a simplicidade”. Certa vez, o autor viu um amigo escrevendo um programa usando VBA. O código do programa é o seguinte:
Com Janela Ativa
IfWindowState=wdWindowStateMaximizeEntãoestaéaprimeiraparte!
MsgBox"ThisisaMaximizeWindow"
FimSe
IfWindowState=wdWindowStateMinimizeEntão esta é a segunda parte!
MsgBox"AquiisaMinimizeWindow"
FimSe
IfWindowState=wdWindowStateNormalEntão esta é a terceira parte!
MsgBox"Em lugar nenhum, é uma janela normal!"
FimSe
Terminar com
À primeira vista parece que a estrutura é bastante bonita e é um bom programa. Mas se você analisar com cuidado, descobrirá que esse procedimento é um fracasso. Porque esses três programas não implementam a estrutura lógica que deveriam ter. Contei essa opinião a esse amigo, ele ouviu muito bem e modificou imediatamente o programa acima. O código específico do programa é o seguinte: WithActiveWindow.
IfWindowState=wdWindowStateMaximizeEntãoestaéaprimeiraparte!
MsgBox"ThisisaMaximizeWindow"
ElseIfWindowState=wdWindowStateMinimizeEntãoestaéasegundaparte!
MsgBox"AquiisaMinimizeWindow"
ElseIfWindowState=wdWindowStateNormalEntãoestaéaterceiraparte!
MsgBox"Em lugar nenhum, é uma janela normal!"
FimSe
Terminar com
Depois que meu amigo terminou de escrever este programa, ele sorriu para mim e disse: "Como é?" Olhei para este programa e pensei: se WindowState não for igual a wdWindowStateMaximize, então terei que julgar se WindowState é igual a wdWindowStateMaximize. , e se ainda não for igual? Então você tem que continuar a julgar se é igual a wdWindowStateNormal. Neste ponto, você tem que passar por três “portas” antes de poder entrar. Fiquei impaciente e escrevi um programa sozinho:
SelectCaseWindowState
CasewdWindowStateMaximize'esta é a primeira parte!
MsgBox"ThisisaMaximizeWindow"
CasewdWindowStateMinimize'esta é a segunda parte!
MsgBox"AquiisaMinimizeWindow"
CasewdWindowStateNormal'estaéaterceiraparte!
MsgBox"Em lugar nenhum, é uma janela normal!"
Finalizar seleção
Como você pode ver, este programa é conciso, fácil de entender e altamente legível. Acredito que adicionará muita cor ao programa. E se você depurá-lo, encontrará outras vantagens. Não admira que meu amigo de repente tenha percebido isso!
Na verdade, existem regras a seguir sobre qual declaração de julgamento usar. Por exemplo: Se houver duas possibilidades, então você pode escolher If/Elseif sem hesitação; para duas ou mais possibilidades, é melhor escolher SelectCase/EndSelect. Na maioria dos casos, se houver apenas um relacionamento opcional, então "ifthen/endif" será a melhor escolha. ->