使用motif开发中文软件的问题
我的linux 系统redhat 3.0不是中文的,是装了中文的语言包的,可以显示中文
我在网上找到一段代码是用motif开发的演示程序,代码如下:
#include <X11/Xlib.h>
#include <X11/keysym.h>
#include <Xm/TextF.h>
#include <Xm/TextFP.h>
#include <Xm/LabelG.h>
#include <Xm/RowColumn.h>
#include <locale.h>
#include <ctype.h>
String fallbacks[] = {
"*fontList:8x16,cclib16_1",
NULL
};
int main(int argc, char *argv[])
{
Widget toplevel, text_w, rowcol;
XtAppContext app;
//XtAddCallback Test;
XtCallbackProc Test;
setlocale(LC_ALL, "");
toplevel = XtVaAppInitialize(&app, "Demos",
NULL, 0, &argc, argv, fallbacks, NULL);
rowcol = XtVaCreateWidget("rowcol",
xmRowColumnWidgetClass, toplevel,
XmNorientation, XmHORIZONTAL,
NULL);
XtVaCreateManagedWidget("请输入:",
xmLabelGadgetClass, rowcol, NULL);
text_w = XtVaCreateManagedWidget("text_w",
xmTextFieldWidgetClass, rowcol,
NULL);
XtAddCallback(text_w, XmNactivateCallback, Test, 0);
XtManageChild(rowcol);
XtRealizeWidget(toplevel);
XtAppMainLoop(app);
return 0;
}
现在编译执行后,图形界面可以出来,但是“请输入”三个字要么就是不出现,要么就是乱码,不知道怎么回事,fallbacks里的字体除了cclib16_1,我还试了用-isas-fangsong ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0,-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1等都不可以,情况也就是前面两种。我实在是没有办法了。
我的编译器是gcc3.2,如果想编译此程序使用此命令:g++ -I/usr/X11R6/include -o motif motif.cc -L/usr/X11R6/lib -lXm -lX11
请各位朋友帮个忙吧!