2021年9月5日日曜日

GIMP Script-Py (10) message は何処行った?

久しぶりの Python 。
しかも、GIMP 2.99.x の Python 3 。
標準の Message の出し方すら忘れて ... 。
困ったもんだ!。


実は、GIMP 2.10 の頃、
Python で 標準の gimp.message を使う事は少なく、
仮に使っても、長々と 文字列を連ねる事が多かったと記憶しています。

すっかり、忘れていますね。
まずい まずい ... 。

復習しましょ。

GIMP 2.x なら gimp.message("文字列群") 。
GIMP 3.x なら Gimp.message("文字列群") 。
そう、2.99 は後者ですね。

此の大文字と小文字の違い。
実は、此れが大きい!。
詳細は省きますが、守って下さいね。
守らないと、 そんなの無いぞ! と怒られて仕舞います。


さて、GIMP 2.99.7 Nightly で、
やっと書いた スクリプト。
でも、 Message を出している筈なのに 無い!。
無いのでは無く、一瞬、出て、暫し後に、消えてたんですね。
場所は、画像の Window の 最下行。  ステータスバーでしょうか?。

おかしいなぁ?。
Dialog にならない ... 。


Window の最下行は、
他の Window が被さっていたり、
Window 自体が Desktop からはみ出す位置にあったりで、
見落とすケースが多いですね。
殊に、画像を扱う GIMP 等の場合、Window 自体も大きいので、殊更です。
更に更に、暫くして消えますので、見落とす可能性も大!。

なので、 Dialog で出てくれないと ... 困るぅ。


休憩。
エラー 表示 が主目的の message なのですが、
大抵のケースで 複数行の説明が来ますね。
  何が
  どうしたから
  どうしろ!
等が多い筈です。
当然、 其の文字列の中には 改行 が含まれます。


そう、GIMP の message は、 Python では、
改行 が含まれるか否かで、
表示場所が変わります。

改行 \n (¥n) があれば Dialog 。
改行 \n (¥n) が無ければ StatusBar 。 (経過時刻に応じ自動消去)

(改行位置は文末に無くても 一応 OK 。  複数行か否かが肝心なのか?。)

但し、もし、Dialog 表示中に、重ねて message を送ると、
改行 が ひとつも無い 文字列でも、 Dialog に出されます。

でも、Dialog 存続/消去 はユーザーに委ねられているので、
後者のケースは 特殊状況 かも。



あ~。 基本を忘れてるぅ~。


一応、試して見た状況を Screen Shot で。



ぼけたかなぁ~。  X(


   余りにも、基本的な事ですから、
   最初は、タイトルで 番外 とする事も考えましたが、
   逆に、基本ですし、誤解されている方もいるでしょうから、
   敢えて、番号 6 を振る事にしました。  順番から行けば 10 ですが、6 が欠番でしたので。  穴埋め。  ;)



[2021/09/05] URL 変更 /gimp-script-py-6 > /gimp-script-py-10

0 件のコメント:

コメントを投稿