 | | WideStudio/MWT Class Reference
| |
クラスの型
WSDappDev
メソッド関数仕様
WSGIappDev 関数の説明
- 書式
- WSDappDev* WSGIappDev()
- 機能
- アプリケーションに1つ存在するアプリケーションクラスの
グローバルインスタンスを取得します。
- 処理
-
- 引数
- なし。
- 返値
- アプリケーションインスタンスへのポインタ
- 注意
- この関数はグローバル関数です。
また、返されたポインタを解放してはいけません。
- サンプル
-
//main() に引き渡される、argc、argv の取得の例
int argc = WSGIappDev()->getArgc();
char** argv = WSGIappDev()->getArgv();
getArgc 関数の説明
- 書式
- int getArgc()
- 機能
- 実行時引数の数を取得する関数です。
main(int argc,char** argv) において渡されて来る
argc を返します。
- 処理
-
- 引数
- なし。
- 返値
- argc
- 注意
- なし。
- サンプル
- WSGIappDev() を参照してください。
getArgv 関数の説明
- 書式
- char** getArgv()
- 機能
- 実行時引数の配列を取得する関数です。
返される値を解放してはいけません。
main(int argc,char** argv) で渡されて来る argv を返します。
- 処理
-
- 引数
- なし。
- 返値
- argv
- 注意
- 返される値を解放してはいけません。
- サンプル
- WSGIappDev() を参照してください。
getInstanceName 関数の説明
- 書式
- char* getInstanceName()
- 機能
- プロジェクト名称を取得する関数です。
返される値を解放してはいけません。
なお、コマンド名称を取得したい場合は、getArgv 関数で
取得されるものの配列要素0番を参照してください。
- 処理
-
- 引数
- なし。
- 返値
- プロジェクト名称
- 注意
- 返される値を解放してはいけません。なお、コマンド名称を
取得したい場合は、getArgv() で取得されるものの配列要素0番を
参照してください。
- サンプル
-
//プロジェクト名称を取得します。
char* iname = WSGIappDev()->getInstanceName();
getWidth() 関数の説明
- 書式
- unsigned short getWidth()
- 機能
- ディスプレイの横幅をドット数で取得する関数です。
- 処理
-
- 引数
- なし。
- 返値
- ディスプレイの横幅
- 注意
- なし。
- サンプル
-
//ディスプレイの横幅を取得します。
WSCushort dw = WSGIappDev()->getWidth();
getHeight() 関数の説明
- 書式
- unsigned short getHeight()
- 機能
- ディスプレイの縦幅をドット数で取得する関数です。
- 処理
-
- 引数
- なし。
- 返値
- ディスプレイの縦幅
- 注意
- なし。
- サンプル
-
//ディスプレイの縦幅を取得します。
WSCushort dh = WSGIappDev()->getHeight();
lock 関数の説明
- 書式
- long lock()
- 機能
- サブスレッド上から、メインスレッドを含めた他のスレッドを
ロックする関数です。
複数のサブスレッド上から同時に lock() が実行された際は、
同時に1つのスレッドが動作するよう、
自動的に排他的に処理されます。
- 処理
-
- 引数
- なし。
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
- サブスレッド上で実行する必要があります。
ロック後は unlock() 関数により、
ロックを解除する必要があります。
この関数を呼び出すとメインスレッドのイベントループが
ロックするため、描画が停止します。従って、
インスタンスのアクセスの排他目的以外の排他目的に
この lock() を用いないで下さい。
- サンプル
-
//サブスレッド上において、インスタンスにアクセスする場合、
//メインスレッドと競合しないよう、
//メインスレッドをロックしてからアクセスします。
WSGIappDev()->lock();
newvlab_000->setProperty(WSNlabelString,"hello!");
//ロックを解除します。
WSGIappDev()->unlock();
unlock 関数の説明
- 書式
- long unlock()
- 機能
- lock() 関数によりロック状態になった
メインスレッドのロックを解除し、動作させます。
- 処理
-
- 引数
- なし。
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
- サブスレッド上で実行する必要があります。
lock() 関数を1度呼び出した後に、
1度 unlock() 関数により、ロックを解除します。
- サンプル
- lock() を参照してください。
processEvent 関数の説明
- 書式
- long processEvent()
- 機能
- イベント処理を実行させます。
処理すべきイベントが存在する場合、そのイベントに関する処理を行ない、
対応するイベントプロシージャを動作させます。
- 処理
- イベントプロシージャ内で長時間処理を行なうと、その間、イベント処理が
行なわれないため、描画更新等が行ない場合があります。
そういった場合に、処理の途中で、イベント処理を行なう必要がある場合、
この関数を呼び出すことで対応します。
- 引数
- なし。
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
-
//イベントプロシージャ内で長時間の処理を行なう場合、
//処理の途中で processEvent() を呼び出し、画面を更新します。
while(1){
//長時間の処理..
//イベントを処理し、画面を更新します。
WSGIappDev()->processEvent();
if (done == True){
break;
}
}
getCurrentThreadId 関数の説明
- 書式
- static long getCurrentThreadId()
- 機能
- 現在実行中の自スレッドのスレッドIDを取得します。
- 処理
-
- 引数
- なし。
- 返値
- 現在実行中の自スレッドID
- 注意
-
- サンプル
-
long tid = WSDappDev::getCurrentThreadId();
sleep 関数の説明
- 書式
- static long sleep(long ms)
- 機能
- 指定された時間(ms)だけスリープします。
- 処理
-
- 引数
-
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
-
- サンプル
-
WSDappDev::sleep(1000);//1秒スリープ
setDefaultTransition 関数の説明
- 書式
- long setDefaultTransition(long trno)
- 機能
- ウィンドウが表示される際の表示効果を指定します。
- 処理
-
- 引数
-
指定可能なトランジション効果には次のようなものが
あります。
WS_TRANSITION_NORMAL | 効果なし(直接表示) |
WS_TRANSITION_FADE | 浮かび上がる表示効果 |
WS_TRANSITION_SLIDEIN_R | 右からのスライドイン表示効果 |
WS_TRANSITION_SLIDEIN_T | 上からのスライドイン表示効果 |
WS_TRANSITION_SLIDEIN_L | 左からのスライドイン表示効果 |
WS_TRANSITION_SLIDEIN_B | 下からのスライドイン表示効果 |
- 返値
- WS_NO_ERR= 正常、それ以外はエラー。
- 注意
- Linux フレームバッファ版、組み込み機器向けの版の
一部のプラットフォームでのサポートとなります。
Windows版や、Linux X11 版では、
指定された値は無視され、そのプラットフォームの表示効果で
動作します。
- サンプル
-
//ウィンドウが表示される際の表示効果を取得
long trno = WSGIappDev()->getDefaultTransition();
//ウィンドウが表示される際の表示効果を指定
WSGIappDev()->setDefaultTransition(WS_TRANSION_FADE);
getDefaultTransition 関数の説明
- 書式
- long getDefaultTransition()
- 機能
- ウィンドウが表示される際の表示効果を取得します。
- 処理
-
- 引数
- なし。
- 返値
- 表示効果(実際の値に関しては setDefaultTransion()を参照してください。)
- 注意
-
- サンプル
- setDefaultTransition()を参照してください。
Document Release 3.98 For Use with WideStudio/MWT Release 3.98, Summer 2008 WideStudio/MWT Home | Up to Copyright(C) WideStudio/MWT Development Team, 1999-2008 | | Last modified: June 25, 2008 | |