get_login_async()


Game Maker Language リファレンス > 組み込み関数 用途別 > 非同期関数 > get_login_async

get_login_async

ユーザ名とパスワードを入力するウィンドウを非同期で表示します

構文

get_login_async(name, password);
username
デフォルトユーザ名
password
デフォルトパスワード

戻り値

Real
ds_mapのインデックス番号

説明

 この関数はユーザ名とパスワードを入力するウィンドウを開きます。引数にはウィンドウの初期入力値を指定します。これにより以前に入力した値を設定することが可能です。不要であれば空文字を指定します。これは非同期関数であり、入力完了を待たずに通常通りイベントを実行し続けます。ユーザが"OK"ボタンを押すと、変数"async_load"に"ds_map"型でデータを返します。

 このマップは、"username"(ユーザ名)と、"password"(パスワード)という2つのキーを持っています。例えばこの値をサーバに送信する際は、json_encode()でJSON文字列に変換すると良いでしょう。

 なおウィンドウへの入力が完了するまでは、ds_mapの"id"キーの値は「-1」となります。

"Create"イベントにユーザログインの処理を記述してみます。

ini_open("Profile.ini");
u = ini_read_string("User","0","");
p = ini_read_string("User","1","");
ini_close();
login = get_login_async(u,p);

上記コードはINIファイルを開いて(存在しない場合は新規作成する)、そのファイルに格納されたユーザ名とパスワードを取得します。INIファイルにユーザ名やパスワードが格納されていなければ空文字となります。そしてget_login_async()を呼び出しログインダイアログを表示し、戻り値を"login"変数に格納します。

非同期で処理しているので、結果はDialogイベントで以下のように戻り値をチェックする必要があります。

if ds_map_find_value(async_load, "id") == login
{
    u = ds_map_find_value(async_load, "username");
    p = ds_map_find_value(async_load, "password");
}

上記コードは、"async_load"変数の"id"キーをチェックし、"login"変数と値が一致するかどうかを判定しています。もしログインが完了すれば、ユーザが入力した情報を各種変数に格納します

Wiki内検索

#search(): You already view a search box

MENU

ドキュメント

GMLリファレンス

2ch

その他



最新の30件

2019-09-27 2019-07-28 2019-07-12 2018-11-17 2017-11-07 2017-10-26 2017-10-01 2017-05-13 2016-10-01 2017-01-22 2017-01-14 2016-12-25 2016-10-09 2016-09-21 2016-08-29 2016-06-21 2016-02-23 2016-02-10 2016-01-18 2015-10-30 2015-10-20 2015-06-23 2015-06-20 2015-06-19 2015-06-10

人気の10件

今日の10件



これまでの訪問者: 657
今日の訪問者: 1
昨日の訪問者: 0
閲覧者: 3