The “comma” prolem is simply that it introduces a linefeed into the text, instead of printing the comma.The “over 30 chars” problem, was mistated… it’s actually depends upon the number of array items in the message array… similiar to the uilistview, except that it starts failing after only takes 7 items… rapid manual states “55 characters, for upto 11 lines”…
Below is a Rapid module that demonstrates … the arrays are named accordingly to which ones work and which ones don’t.
Additionaly I found that for some of them that DO work, occasionly they’d fail…
MODULE UIDebugMod
CONST string DONTWORK10{10} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”,
“this is a 75 character long line this is a 75 character long line this 4”,
“this is a 75 character long line this is a 75 character long line this 5”,
“this is a 75 character long line this is a 75 character long line this 6”,
“this is a 75 character long line this is a 75 character long line this 7”,
“this is a 75 character long line this is a 75 character long line this 8”,
“this is a 75 character long line this is a 75 character long line this 9”,
“this is a 75 character long line this is a 75 character long line thi 10”];
CONST string DONTWORK55_10{10} := [“This is a 55 character long line this is a 55 char 1”,
“This is a 55 character long line this is a 55 char 2”,
“This is a 55 character long line this is a 55 char 3”,
“This is a 55 character long line this is a 55 char 4”,
“This is a 55 character long line this is a 55 char 5”,
“This is a 55 character long line this is a 55 char 6”,
“This is a 55 character long line this is a 55 char 7”,
“This is a 55 character long line this is a 55 char 8”,
“This is a 55 character long line this is a 55 char 9”,
“This is a 55 character long line this is a 55 char 10”];
CONST string DONTWORK55_8{8} := [“This is a 55 character long line this is a 55 char 1”,
“This is a 55 character long line this is a 55 char 2”,
“This is a 55 character long line this is a 55 char 3”,
“This is a 55 character long line this is a 55 char 4”,
“This is a 55 character long line this is a 55 char 5”,
“This is a 55 character long line this is a 55 char 6”,
“This is a 55 character long line this is a 55 char 7”,
“This is a 55 character long line this is a 55 char 8”];
CONST string DoesWORK55_7{7} := [“This is a 55 character long line this is a 55 char 1”,
“This is a 55 character long line this is a 55 char 2”,
“This is a 55 character long line this is a 55 char 3”,
“This is a 55 character long line this is a 55 char 4”,
“This is a 55 character long line this is a 55 char 5”,
“This is a 55 character long line this is a 55 char 6”,
“This is a 55 character long line this is a 55 char 7”];
CONST string DoesWORK_comma55_7{7} := [“This is a 55 character long line, this is a 55 char 1”,
“This is a 55 character long line, this is a 55 char 2”,
“This is a 55 character long line, this is a 55 char 3”,
“This is a 55 character long line, this is a 55 char 4”,
“This is a 55 character long line, this is a 55 char 5”,
“This is a 55 character long line, this is a 55 char 6”,
“This is a 55 character long line, this is a 55 char 7”];
CONST string DONTWORK8{8} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”,
“this is a 75 character long line this is a 75 character long line this 4”,
“this is a 75 character long line this is a 75 character long line this 5”,
“this is a 75 character long line this is a 75 character long line this 6”,
“this is a 75 character long line this is a 75 character long line this 7”,
“this is a 75 character long line this is a 75 character long line this 8”];
CONST string DoesWORK7{7} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”,
“this is a 75 character long line this is a 75 character long line this 4”,
“this is a 75 character long line this is a 75 character long line this 5”,
“this is a 75 character long line this is a 75 character long line this 6”,
“this is a 75 character long line this is a 75 character long line this 7”];
CONST string DoesWORK6{6} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”,
“this is a 75 character long line this is a 75 character long line this 4”,
“this is a 75 character long line this is a 75 character long line this 5”,
“this is a 75 character long line this is a 75 character long line this 6”];
CONST string DoesWORK4{4} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”,
“this is a 75 character long line this is a 75 character long line this 4”];
CONST string DoesWORK3{3} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”,
“this is a 75 character long line this is a 75 character long line this 3”];
CONST string DoesWORK2{2} := [“This is a 75 character long line this is a 75 character long line this 1”,
“this is a 75 character long line this is a 75 character long line this 2”];
CONST string DoesWORK1{1} := [“This is a 75 character long line this is a 75 character long line this 1”];
!-----------------------------------------------------
!-----------------------------------------------------
!-----------------------------------------------------
PROC UIMessageBoxDebug()
VAR btnres answer;
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK1DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK2DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK3DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK4DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK6DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK55_7DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7Buttons:= btnAbrtRtryIgnDefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7Buttons:= btnOKCancelDefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7Buttons:= btnRetryCancelDefaultBtn:=resRetryIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7Buttons:= btnYesNoDefaultBtn:=resYesIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DoesWORK_comma55_7Buttons:= btnYesNoCancelDefaultBtn:=resYesIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DONTWORK55_10DefaultBtn:=resOKIcon:=iconInfo);
testAnswer UIMessageBox(Header:="UIMessageBox Test"MsgArray:=DONTWORK55_8DefaultBtn:=resOKIcon:=iconInfo);
ENDPROC
proc testAnswer(btnres theanswer)
tpwrite "The Answer Number was == " Num:=theanswer;
endproc
ENDMODULE