【MEL基本】4時限目 UIを横に並べる&アイコンボタンの使用方法

AriToolWindow30.jpgAriToolWindow32.jpg

【MEL基本】ボタンで機能を実行するMELを書く
の続きで、今回はボタンを横に並べる方法と、アイコンボタンを使用する方法です。



準備

とりあえMEL基本初回記事の続きからはじめます。
このときは、簡単にボタンの幅を揃えたかったので、「縦に並べる機能」のcolumnLayoutのフラグでサイズを指定(-w 120)にして、その子であるボタンはその幅にピッタリになるよう(-adj true)にしていました。
このままだと都合が悪いので、今回それは解除しましょう。
columnLayoutの直後のフラグを削除してください。
AriToolWindow25.jpg
セミコロン( ; )まで消さないように注意してください。

サイズが指定されていないので、ラベルに書かれている内容によって各ボタンの幅がばらばらになります。
AriToolWindow26.jpg

では、個別にサイズを色々指定してみましょう。
-w が幅で、必要であれば -h で高さも指定できます。詳細
AriToolWindow27.jpg

(親columnLayoutの -w を消すまでは、オーバーしたサイズは隠れてしまうのですが、)
親の縛りがなくなったので、自由な大きさにできます。
AriToolWindow28.jpg

全部同じサイズ揃えたい場合、今のところちょっとめんどくさいですが、すべてに同じサイズを書いてください。
今のところすみません。




横に並べる

それではいよいよ横に並べて見ます。
横に並べたいボタンを
rowLayout というコマンドと、setParent..; で挟みます。
このときrowLayout のフラグ -nc (-numberOfColumns) で横に並べたいボタンの数を必ず指定します。
AriToolWindow29.jpg
横に並べたいボタンの数は3つなので、-nc 3。
3つボタンをのあとには、setParent..;で閉じる。こんな感じです。

ボタンを横に並べることが出来ました。
AriToolWindow30.jpg

下のコマンドをコピペで、ここまでの結果が得られます。


{
if ( (`window -ex AriToolWindow`) == true ) deleteUI AriToolWindow;
window -title "機能ボタン" AriToolWindow;

scrollLayout;

columnLayout;

button -w 120 -l "シンメトリーチェック" -c "AriSymmetryChecker";
button -w 120 -l "リネーマー" -c "AriRenamer";

separator ;//ただの分割線

button -w 200 -l "UVスケール" -c "AriUVScaleChecker";
button -w 100 -h 60 -l "UV格子状" -c "AriUVGridding";

separator ;//ただの分割線

rowLayout -nc 3;
button -l "アウトライナ" -c "OutlinerWindow";
button -l "ハイパーシェード" -c "HypershadeWindow";
button -w 60 -l "" -c "";
setParent..;

separator ;//ただの分割線

//ここから下はダミー
button -l "" -c "";
button -l "" -c "";
button -l "" -c "";
button -l "" -c "";

setParent..;
setParent..;

showWindow;
}




アイコンボタンを使用する

アイコンの使用も簡単です。
今までbuttonコマンドを使用していましたが、
iconTextButtonというコマンドを使用します。
buttonのときは、(-label) -l でラベル文字を書いていましたが、(-image) -i でアイコン名を指定します。
(-command) -c で実行するコマンドを指定するのは同じですね。
AriToolWindow31.jpg
.pngのような拡張子は無しでも大丈夫なはずです。

こんな感じにアイコンのボタンになります。ボタンと同じように押すと、コマンドが実行されます。
AriToolWindow32.jpg
もちろんrowLayoutで横になれべられますので、よかったらやってみてください。

使用できるアイコンはデフォルトのものであれば、シェルフエディタで確認できるものです。
AriToolWindow33.jpg

(デフォルトアイコンを一覧したい場合このMELお勧めです。)
【MEL】デフォルトアイコン一覧
AriIconViewer01.jpg


オリジナルを使用したい場合は、
マイドキュメントmaya階層内にあるiconフォルダに入れれば使用できます。

マイドキュメント > maya\2015-x64 > ja_JP > prefs > icons(日本語版)
マイドキュメント > maya\2015-x64 > prefs > icons(英語版)


あとは、一応絶対パスでもいけます。(\は/に)

-image "D:/mayaProj/image/test.png"

iconTextButtonコマンドの極最小限の使い方でしたが、フラグはまだまだたくさんあり、こちらで確認できます。
理解できそうなものはチャレンジしてみてください。
http://download.autodesk.com/global/docs/maya2012/ja_jp/Commands/iconTextButton.html

あとフラグですが、-i とかショートのもの使ってますが、後々わかりにくくなりそうでしたら-imageとかロングを使用してください。
自分はそのときの気分で混在させちゃうと思います。

ここまでのソースです。

{
if ( (`window -ex AriToolWindow`) == true ) deleteUI AriToolWindow;
window -title "機能ボタン" AriToolWindow;

scrollLayout;

columnLayout;

button -w 120 -l "シンメトリーチェック" -c "AriSymmetryChecker";
button -w 120 -l "リネーマー" -c "AriRenamer";

separator ;//ただの分割線

button -w 200 -l "UVスケール" -c "AriUVScaleChecker";
button -w 100 -h 60 -l "UV格子状" -c "AriUVGridding";

separator ;//ただの分割線

rowLayout -nc 3;
button -l "アウトライナ" -c "OutlinerWindow";
button -l "ハイパーシェード" -c "HypershadeWindow";
button -w 60 -l "" -c "";
setParent..;

separator ;//ただの分割線

iconTextButton -i "polyDodecahedron.png" -c "OutlinerWindow";
iconTextButton -i "SP_MessageBoxWarning.png" -c "OutlinerWindow";

//ここから下はダミー
button -l "" -c "";
button -l "" -c "";
button -l "" -c "";
button -l "" -c "";

setParent..;
setParent..;

showWindow;

}





テーマ : 3DCG
ジャンル : コンピュータ

tag : Maya, MEL, MEL基本, UI, カスタマイズ,

スポンサーリンク

コメントの投稿

非公開コメント

カテゴリ
おすすMEL1
UV格子状整列 AriUVGridding03.gif

UV解像度チェック AriUVScaleChecker01.gif
月別アーカイブ
スポンサーリンク
おすすMEL2
リネーマー AriRenamer01.gif

置換/配置 AriAssetChanger01.gif
記事一覧

全ての記事を一覧

アクセスランキング
[ジャンルランキング]
コンピュータ
27位
アクセスランキングを見る>>

[サブジャンルランキング]
デザイン
2位
アクセスランキングを見る>>
ブログ内検索
プロフィール

Ari

Author:Ari
ExpertElite000.jpg

ゲーム系を中心にモデラーをやってます。プライベートでその他の作業も挑戦中です。
拍手ボタンありがとうございます。テンションあがります。

ツイッターでお知らせなどやってます。よかったらどうぞフォローお願いします。
ツイッターを覗いてみる

MEL
スポンサーリンク
QRコード
QR
タグ

Maya MEL モデリング MEL更新 Mayaあるある UI UV データ管理 カスタマイズ 数値設定 ~がない MayaTips アニメーション モデリングツールキット リネーム AriReFreezeRotate AriCompactToolSettings つぶやき MEL基本 マテリアル AriUVGridding バグ? AriSetPivot Maya基本 ホットキー 頂点カラー AriUVFit 新機能 記事まとめ AriVertexColorEditor AriMirror AriCircleVertex ~ない AriSceneOpener リトポロジー テクスチャ カメラ ジョイント スケルトン アンケート AriSortOutliner AriUVScaleChecker AriTransferPosition スクリプト MEL更新頂点カラー AriViewWindow AriUVAdsorption AriSplitPolygon AriSelectEdgeRing AriUVRatio AriDeleteEdgePreserveBorder AriUVAdsorptionMove AriAniKeyScale Rig AriAnimationCopy AriRenamer AriQuadrangulateRing 更新 レンダリング AriUVSetList ZBrush モデリングAriCircleVertex 

最新記事
メールフォーム

名前:
メール:
件名:
本文: