Pergunta

Eu tenho um aplicativo que é construído para trabalhar em Windows, Linux e Solaris que usa o GUI Perl/TK. Devido a restrições, estamos limitados a Perl / TK única . Além disso, estamos limitados a uma versão antiga Perl/Tk, 5.00404.

Eu gostaria de trabalhar dentro dessas limitações para fazer o olhar GUI tão agradável e moderno possível.

Há algum web-recursos que têm esquemas de design TK (para botões, quadros, cores, etc.) que poderiam me ajudar nessa empreitada?


Eu também estou procurando conselhos de modernização, como a que eu encontrei aqui :

Se você está achando que as suas aplicações Tk olhar um pouco feia em sistemas baseados em X, tente adicionar as seguintes linhas ao topo do seu script:

$mw->optionAdd("*font", "-*-arial-normal-r-*-*-*-120-*-*-*-*-*-*");
$mw->optionAdd("*borderWidth", 1);
Foi útil?

Solução

Tente usar imagens em vez de elementos de botão, então você pode ter qualquer estilo que você gosta e as fontes podem ser cozido em Isto irá funcionar para praticamente qualquer elemento onde o conteúdo não são dinâmicos -. Incluindo fundos de painéis e tal. Concedido é mais trabalho, mas ele não resolver o problema, especialmente se você tem um artista competente no seu grupo de projeto.

Outras dicas

Você pode usar o Tk motor do tema para dar o seu aplicação melhor aparência.

Usando optionAdd de ajustar padrões através do banco de dados opção é um começo razoável. Uma discussão sobre isso pode ser encontrada em:

http://tcl.projectforum.com/tk/221

Fazer download griffin.kit de lá, use a ferramenta sdx a desembrulhá-lo e localizar griffin.tcl para obter um bom conjunto de configurações de opção.

http://wiki.tcl.tk/3411 para a ferramenta sdx.

Uma vez que em Linux fundo de Tk :: Entrada e Tk :: texto é cinza Também gostaria de usar as duas linhas seguintes.

$mw->optionAdd( '*Entry.background',   'snow1' );
$mw->optionAdd( '*Text.background',    'snow1' );

Substituir 'snow1' com uma cor de sua escolha. Você também pode usar a representação hexadecimal (RGB) das cores como '# ff9696'.

O motor personalizável Tile para Tk faz com que pareça muito mais bonita. No entanto, Perl / Tk tem ficado muito atrás desenvolvimento de Tk, e não pode tirar vantagem da telha e outros avanços.

Você deve investigar se TKX é uma opção para você. Não é completamente compatível com Perl / Tk, mas a API é muito perto. É uma ponte entre Perl e Tcl / Tk, para que ele possa usar todo o moderno Tcl / Tk apresenta (como Tile) enquanto continua a ter a lógica do aplicativo codificado em Perl. Muito poucos dos próprios utilitários gráficos da ActiveState usar TKX, com bastante boa aparência resultados.
ActiveState PPM
(fonte: activestate.com )

Perl 5,00404 é incrivelmente antiga, no entanto. As reivindicações dist TKX a depender Perl=5.008 ... Eu não tenho uma suficiente Perl idade para ver como exato o que é.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top