|
Tech Note 31: 問題と回避策 April 2, 2003 © NSB Corporation. All rights reserved. |
Go to English page.
INPUTBOX
:Palm-size PCのスクリーン上ではINPUTBOX
は正しくサイズ変更しない。さらにPocket PCおよびHPC 2000では動きません。このコマンドはマイクロソフトのソフトウエアに組み込まれています。回避策として、DialogXコントロールの一部を使ってInputBoxの機能をみたすことができます。下のコードをあなたのプログラムに追加し、InputBoxのファンクションをオーバーライドして下さい。(DialogXはInputBoxには含まれていない機能も持ち合わせています)
FUNCTION INPUTBOX(prompt, title, default) IF ISEMPTY(NSBIB) THEN ADDOBJECT "DialogX", "NSBIB_Dlg"", 0, 0, 0, 0 SET NSBIB=NSBIB_Dlg END IF INPUTBOX = NSBIB.InputBox(prompt, title, default) END FUNCTION 'INPUTBOX X=InputBox("Message area". "INPUTBOX Example", "Default Text")
howColor
メソッドはサポートされていません。さらに、showFont
メソッドはサイズ変更をしません。マイクロソフトはこのことに関して、製品を早くリリースするために急いだ結果だと説明しています。
INPUTBOX
ファンクションを使うと「Out of Memory」エラーを起こします。原因はHPが不良なVBScript.dllをROMに組み込んだようです。Script68を使って、モジュールをインストールしてこれを修正して下さい。
EVAL
ステートメントは同じデバイスでは動作しません。マイクロソフトのコンパイラーに問題があるようです。回避策として、Exevuteを代わりに使って下さい。
Function formatNum(n,d,l,p,g) formatNum=fixformat(formatnumber(abs(n),d,l),n,d,l,p,g,0) End Function Function formatCur(n,d,l,p,g) formatCur=fixformat(formatcurrency(abs(n),d,l),n,d,l,p,g,1) End Function Function fixformat(fn,n,d,l,p,g,a) If g Then g=mid(",.",instr(".,",mid(cstr(1/10),2,1)),1) l=Len(fn) If d Then l=l-d-1 While l>3+a l=l-3 fn=mid(fn,1,l) & g & mid(fn,l+1) Wend End If If n<0 Then If p Then fn="(" & fn & ")" Else fn="-" & fn End If End If fixformat=fn End Function