こんな感じでやってみました。
「枠線のない、背景が白の入力ボックス」を作るのに少し面倒なことをしていますが。
//*の部分で指定する色は16進数で0xBBGGRRの形で指定する。(RRGGBBではないのに注意)
#include "user32.as"
#include "gdi32.as"
CreateSolidBrush 0xFFFFFF : br_h=stat //*ブラシを作成 入力ボックスの背景色
pos 100,100
font msgothic,16
objmode 2
s=""
input s,200,20
h=objinfo(stat,2) //入力ボックスのハンドル
SetWindowLong h,-20,0 //拡張ウィンドウスタイルに何も指定されていない状態にし、枠線を消す。
SetWindowPos h,0,0,0,0,0,0x27 //拡張ウィンドウスタイルの変更を反映
//0x27=SWP_NOSIZE|SWP_NOMOVE|SWP_NOZORDER|SWP_FRAMECHANGED
font msgothic,12
//以下、Google風の装飾(周りを線で囲む)
//この方法にしない場合は以下3行をコメントアウトしてください
color 50,150,240
pos 110,80 : mes "入力してください" : w=ginfo_mesx
line 90,85,100,85 : line 90,135 : line 310,135 : line 310,85 : line 110+w+10,85
//以下、MSアカウント風の装飾
//color 0,0,255
//line 100,125,300,125
pos 100,140
button gosub "文字を取得",*but
oncmd gosub *edit,0x133 //WM_CTLCOLOREDIT
onexit *exit
//テキストキューを設定(不要な場合は以下3行はコメントアウトしてください)
t="入力してください"
sdim t16,strlen(t)*2+2 : cnvstow t16,t //UTF-16に変換
sendmsg h,0x1501,1,varptr(t16) //EM_SETCUEBANNER=0x1501
stop
*edit
if lparam=h {
SetTextColor wparam,0x000000 //*入力ボックスの文字の色
SetBkColor wparam,0xFFFFFF //*入力ボックスの背景色
return br_h //ブラシのハンドルを返す必要がある
}
return
*but
title s
return
*exit
DeleteObject br_h //終了時にブラシを削除
end