Perl 5.004でPerl / TK GUIの外観を改善するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/611111

質問

Perl / TK GUIを使用するWindows、Linux、およびSolarisで動作するように構築されたアプリケーションがあります。制約のため、Perl / TKに限定されています 。さらに、古い Perl / Tk バージョン 5.00404 に制限されています。

これらの制限内で作業して、GUIを可能な限り見やすくモダンにしたいと思います。

この取り組みに役立つTKデザインスキーム(ボタン、フレーム、色など)を持つWebリソースはありますか?


こちらで見つけたような近代化のアドバイスも探しています:

  

XベースのシステムでTkアプリが少しいように見える場合は、スクリプトの先頭に次の行を追加してみてください。

$mw->optionAdd("*font", "-*-arial-normal-r-*-*-*-120-*-*-*-*-*-*");
$mw->optionAdd("*borderWidth", 1);
役に立ちましたか?

解決

ボタン要素の代わりに画像を使用してみて、好きなスタイルとフォントを焼き付けることができます。これは、コンテンツが動的でないほとんどすべての要素(ペインなどの背景を含む)で機能します。それはより多くの作業ですが、特にプロジェクトグループに有能なアーティストがいる場合は、問題を解決します。

他のヒント

Tkテーマエンジンを使用して、アプリの見栄え。

optionAddを使用して、オプションデータベースを介してデフォルトを調整する 合理的なスタートです。これに関するスレッドは、次の場所にあります。

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

そこからgriffin.kitをダウンロードし、sdxツールを使用して展開し、見つけます griffin.tclを使用して、適切なオプション設定を取得します。

sdxツールの場合はhttp://wiki.tcl.tk/3411

>

LinuxではTk :: EntryとTk :: Textの背景が灰色なので、次の2行も使用します。

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

「snow1」を選択した色に置き換えます。 '#ff9696'のような色の16進表現(RGB)を使用することもできます。

Tkの Tile テーマ化エンジンにより、見た目がずっときれいになります。ただし、Perl / TkはTkの開発よりもはるかに遅れており、Tileやその他の進歩を活用することはできません。

Tkx がオプションかどうかを調査する必要があります。 Perl / Tkとの完全な互換性はありませんが、APIはかなり近いです。 PerlとTcl / Tkの間のブリッジなので、Perlでコーディングされたアプリケーションロジックを持ちながら、Tileなどの最新のTcl / Tk機能をすべて使用できます。 ActiveStateの独自のグラフィカルユーティリティのかなりの数がTkxを使用しており、かなり見栄えの良い結果が得られています。
ActiveState PPM
(ソース: activestate.com

Perl 5.00404は非常に古いものです。 Tkx distは、Perlに依存していると主張しています≥ 5.008 ...それがどれほど正確かを知るのに十分な古いPerlがありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top