开发者

how can i break the line in JOptionpane message box

<script language="javascript">
<![CDATA[
    importPackage(javax.swing);
    importPackage(java.lang);
    System.out.println("Hello from JavaScript!");
    var optionPane = JOptionPane.showMessageDialog(null,'Deployment instruction = ' + Deployment_Instrution);
    ]]>
    </script>

here Deployment_Instruction is variable in which i am storing the output of sql select query. the output of sql select query length is too much big so the size of JOptionpane message开发者_如何学JAVA box is also going bigger. for this i want to break the big line in message box. how can i do this.pls help[ me out asap. thanks in advance....


I guess you'll have to break the line by inserting newlines where appropriate. For a simple application like this it might do to just have a basic function that breaks on spaces once a line reaches the maximum length that you want.

Something like:

var boxText = wrapLines( 30, Deployment_Instruction );
JOptionPane.showMessageDialog( null, boxText );

Here the maximum length would be 30 characters. With the wrapLines function being:

function wrapLines(max, text)
{
    max--;
    text = "" + text;
    var newText = "";
    var lineLength = 0;

    for (var i = 0; i < text.length; i++)
    {
        var c = text.substring(i, i+1);
        if (c == '\n')
        {
            newText += c;
            lineLength = 1;
        }
        else if (c == ' ' && lineLength >= max)
        {
            newText += '\n';
            lineLength = 1;
        }
        else
        {
            newText += c;
            lineLength++;
        }
    }
    return (newText);
}

Note that this will give a 'ragged' right edge, so if there is a very long word at the end of a line it may not be satisfactory.

By the way your variable name is missing a letter 'c' - Instru?tion.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜