タブっぽいもの表示

タブっぽいもの表示

Win32APIを使えば本物のタブ設置できますけど、ある目的があってそれっぽいものを表示するものを作りました。
*TabWrite
redraw 0
color 255,255,255 : boxf
color
gmode 3,ginfo(12),ginfo(13),127
grect ginfo(12)/2,ginfo(13)/2+12,0,ginfo(12),ginfo(13)-24
//
ButtonMessage="タブ1","タブ2です","タブ3だよ~ん","タブの長さに合わせてます","5番目のタブ"
ObjectPositionX=0
objmode 2 : font msgothic,12
foreach ButtonMessage
ObjectSizeX=6*strlen(ButtonMessage(cnt))+8
if TabList!cnt : pos ObjectPositionX,2 : objsize ObjectSizeX,22 : button gosub ButtonMessage(cnt),*TabControl : ButtonID(stat)=cnt : else : color : grect ObjectPositionX+ObjectSizeX/2,12,0,ObjectSizeX,24 : pos ObjectPositionX+4,7 : mes ""+ButtonMessage(cnt)
ObjectPositionX+ObjectSizeX
loop
redraw
stop
*TabControl
ObjectID=stat
clrobj
TabList=ButtonID(ObjectID) // オブジェクトIDがそのままタブの数字になるわけではないので算出
goto *TabWrite
使用はご自由にどうぞ。