我正在开始使用 KSH 中的 GUI,所以这是我的第一个示例:
#! /usr/dt/bin/dtksh
main()
{
XtInitialize TOPLEVEL dtHello DtHello "$@"
XmCreateMessageDialog HELLO $TOPLEVEL hello \
dialogTitle:"DtHello" \
messageString:\
"$(print "Hello\nWorld")"
XmMessageBoxGetChild HELP $HELLO\
DIALOG_HELP_BUTTON
XtUnmanageChild $HELP
XmMessageBoxGetChild CANCEL $HELLO\<\n>
DIALOG_CANCEL_BUTTON
XtUnmanageChild $CANCEL
XtAddCallback $HELLO okCallback exit
XtManageChild $HELLO
XtMainLoop
}
但是当我尝试启动我的脚本时,我得到了下一个:
gui.ksh: syntax error at line 15: `newline' unexpected
语法错误在这一行:
DIALOG_CANCEL_BUTTON
预先感谢您的任何帮助。
答案1
嗯...这太简单了,所以我只需要检查一下奥莱利博士
我不知道 KSH 对空格和表格敏感。无论如何,这里有一个解决方案(如果对某人有用)。
#! /usr/dt/bin/dtksh
main()
{
XtInitialize TOPLEVEL dtHello DtHello "$@"
XmCreateMessageDialog HELLO $TOPLEVEL hello \
dialogTitle: "First Window" \
messageString:"$(print "Hello\nWorld")"
XmMessageBoxGetChild HELP $HELLO \
DIALOG_HELP_BUTTON
XtUnmanageChild $HELP
XmMessageBoxGetChild CANCEL $HELLO \
DIALOG_CANCEL_BUTTON
XtUnmanageChild $CANCEL
XtAddCallback $HELLO okCallback exit
XtManageChild $HELLO
XtMainLoop
}
谢谢。