www.pudn.com > xxmpx_sjs.rar > DoTest.cpp


// DoTest.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "xxmpx.h" 
#include "DoTest.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
static unsigned long time1,time2,timeWeight,speed;//这几个变量用于显示输入速度 
static char speedStr[10]; 
 
static int page=1; 
static int showFlag=1; 
static int showFlag2=1; 
static char targetString[41]; 
static char *PerKeyShow[]={"人入火贝大天夭夫……………………………………A", 
                           "弓乃子了 勹夕鱼鸟乌 ……………B b", 
						   "月用甫耳且目……………………………………………………C", 
						   "亠亡立六文亦方广……………………………………D", 
						   "山巾彐五正车…………………………………E", 
						   "石歹万厂 十……………………………… F f", 
						   "虫 酉西三二一……………………………………………G", 
						   "非片卜爿川丨业止上…H", 
						   "土士工干千 ……………………………………… I", 
						   "手寸于丁…………………………………………J", 
						   "日曰 ……………………………………………………K", 
						   "饣乙己已巳巴……………………………L", 
						   "宀穴 皿四………………………………M", 
						   "艹廾甘廿井卅世 几九儿………… N n", 
						   "口囗…………………………………………………………………O", 
						   " 尸羽马力刀………………………P", 
						   "生牛午 甲由申田母毋…………………………Q", 
						   "木未末耒 戋戈弋………………………R", 
						   "豸身舟白乡斤………………………S", 
						   " 匕七乇毛…………………………………… T t", 
						   "王壬丰 门冂凵匚……………U", 
						   "疒豕乑水氺巛八酋……………………V", 
						   "心 臼也乜 ……………………………………………… W", 
						   "女丈夂攵久又…………………………………………X", 
						   "禾米不小………………………………………Y", 
						   "幺厶之辶廴……………………………………Z"}; 
static char *ghzl[]={"人","阝","","月","山","石","虫","忄","","土","扌","", 
"日","曰","讠","","宀","艹","口","尸","钅","", 
"木","彳","","犭","","亻","","王","疒","氵","女","禾","纟",""}; 
//有12个 
static char *dlz_bcm[]={"立:dl.(补充码)","亡:dw.(补充码)","酉:gy.(补充码)","石:fs.(补充码)", 
"末:rm.(补充码)","乙:ly.(补充码)","鸟:bn.(补充码)","入:ar.(补充码)", 
"毋:qw.(补充码)","申:qs.(补充码)","几:nj.(补充码)","工:ig.(补充码)"}; 
//dlz 单梁字   “人ren”之前有54个,之后有137个,共193个 
static char *dlz[]={"刂 立l刀旁"," 立l刀旁"," 竹z字头"," 虎h字头","虍 虎h字头"," 足z字旁", 
" 牛n字旁"," 匕b字旁","丶 点d"," 点d","一 横h","丿 撇p"," 撇p"," 捺n", 
"彡 三s撇"," 三s撇"," 二e点"," 三s点","灬 四s点底"," 四s点底"," 四s字头"," 鸟n字头", 
" 平p宝盖","冖 平p宝盖"," 骨g字头"," 曹c字头"," 贯g字头"," 己j字旁", 
" 巳s字旁"," 雨u:字头"," 丰f字头"," 手s字头"," 手s字旁"," 手s字旁",  
" 左z框"," 左z框","冂 下x框"," 下x框"," 下x框"," 右y框","匚 右y框","凵 上s框", 
"囗 方f框", "饣 食s字旁","辶 走z之底","夂 父f字头","攵 反f文旁", 
"衤 衣y字旁"," 衣y字旁","礻 示s字旁"," 示s字旁","冫 二e点水"," 二e点水","丨 竖s",  //54个 
 
"人ren","入ru","火huo","贝bei","大dai","天tian","夭yao","夫fu","弓gong", 
"乃nai","子zi","了le","夕xi","鱼u:","鸟niao","乌wu","月u:e","用yong","甫fu","耳er","且qie", 
"目mu","亡wang","立li","六liu","文wen","亦yi","方fang","广guang","山shan","巾jin","正zheng", 
"五wu","车che","石shi","歹dai","万wan","厂chang","十shi","虫chong","酉you","西xi","三san", 
"二er","一yi","非fei","业ye","止zhi","上shang","凸tu","片pian","卜bu","川chuan","土tu", 
"士shi","工gong","干gan","千qian","手shou","于u:","寸cun","丁ding","日ri","曰u:e","乙yi", 
"已yi","己ji","巳si","巴ba","○ling","穴xue","皿min","四si","甘gan","廿nian","井jing", 
"世shi","卅sa","几ji","九jiu","儿er","口kou","尸shi","羽u:","马ma","力li","刀dao","生sheng", 
"牛niu","午wu","甲jia","由you","申shen","田tian","母mu","毋wu","木mu","未wei","末mo", 
"戋jian","戈ge","弋yi","身shen","舟zhou","白bai","乡xiang","斤jin","匕bi","七qi","毛mao", 
"王wang","壬ren","丰feng","门men","水shui","八ba","酋qiu","心xin","臼jiu","也ye","女nu:", 
"丈zhang","久jiu","又you","禾he","米mi","不bu","小xiao","幺yao","之zhi","凹ao","乜mie", 
"厶si","爿pan","耒le","豸zhi","豕shi"}; 
static char *tszf[]={"阝","忄","扌","讠","饣","宀","艹","","钅","",  //前10个 
",","、","。",":",";","?","!","·","~","(",")", 
"“","”","‘","’","《","》","%","‰","℃", 
"①","②","√","¥","£","$","→","↑","§","※","№","∕","\","+","-", 
"×","÷","=","≈","≠","─","…","{","}","『","』","〖","〗", //前58个 
"──","……","{}","『』","〖〗"};               //共63个 
 
/////////"──","……","{ }","『』","〖〗" 
///////////////////////////////////////////////////////////////////////////// 
// DoTest dialog 
 
 
DoTest::DoTest(CWnd* pParent /*=NULL*/) 
	: CDialog(DoTest::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(DoTest) 
	m_edit_text = _T("请打开形象码输入法然后选择练习"); 
	m_radio_lx = -1; 
	 m_static_ts = _T("    虽然有的人只需几个小时就可以掌握,但我们还是建议"); 
	m_static_ts6 = _T("学习者要下一点功夫坚持练习20个小时以上。因为一种生理"); 
	m_static_ts7 = _T("反射的形成需要有足够的刺激量,而只有利用生理反射才能"); 
	m_static_ts8 = _T("从根本上减轻脑力负担达到轻松快速不伤神不遗忘的效果。"); 
	//}}AFX_DATA_INIT 
} 
 
 
void DoTest::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(DoTest) 
	DDX_Control(pDX, IDC_BUTTON_SHOW2, m_button_show2); 
	DDX_Control(pDX, IDC_BUTTON_HIDE2, m_button_hide2); 
	DDX_Control(pDX, IDC_BUTTON_YCTS, m_button_ycts); 
	DDX_Control(pDX, IDC_BUTTON_UP, m_button_up); 
	DDX_Control(pDX, IDC_BUTTON_SHOW, m_button_show); 
	DDX_Control(pDX, IDC_BUTTON_LSXS, m_button_lsxs); 
	DDX_Control(pDX, IDC_BUTTON_DOWN, m_button_down); 
	DDX_Text(pDX, IDC_EDIT_TEXT, m_edit_text); 
	DDV_MaxChars(pDX, m_edit_text, 40); 
	DDX_Radio(pDX, IDC_RADIO1, m_radio_lx); 
	DDX_Text(pDX, IDC_STATIC_TS, m_static_ts); 
	DDV_MaxChars(pDX, m_static_ts, 80); 
	DDX_Text(pDX, IDC_STATIC_TS6, m_static_ts6); 
	DDV_MaxChars(pDX, m_static_ts6, 80); 
	DDX_Text(pDX, IDC_STATIC_TS7, m_static_ts7); 
	DDV_MaxChars(pDX, m_static_ts7, 80); 
	DDX_Text(pDX, IDC_STATIC_SPEED, m_static_ts8); 
	DDV_MaxChars(pDX, m_static_ts8, 80); 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(DoTest, CDialog) 
	//{{AFX_MSG_MAP(DoTest) 
	ON_BN_CLICKED(IDC_BUTTON_DOWN, OnButtonDown) 
	ON_BN_CLICKED(IDC_BUTTON_LSXS, OnButtonLsxs) 
	ON_BN_CLICKED(IDC_BUTTON_SHOW, OnButtonShow) 
	ON_BN_CLICKED(IDC_BUTTON_UP, OnButtonUp) 
	ON_BN_CLICKED(IDC_BUTTON_YCTS, OnButtonYcts) 
	ON_EN_CHANGE(IDC_EDIT_TEXT, OnChangeEditText) 
	ON_BN_CLICKED(IDC_RADIO1, OnRadio1) 
	ON_BN_CLICKED(IDC_RADIO10, OnRadio10) 
	ON_BN_CLICKED(IDC_RADIO2, OnRadio2) 
	ON_BN_CLICKED(IDC_RADIO3, OnRadio3) 
	ON_BN_CLICKED(IDC_RADIO4, OnRadio4) 
	ON_BN_CLICKED(IDC_RADIO5, OnRadio5) 
	ON_BN_CLICKED(IDC_RADIO6, OnRadio6) 
	ON_BN_CLICKED(IDC_RADIO7, OnRadio7) 
	ON_BN_CLICKED(IDC_RADIO8, OnRadio8) 
	ON_BN_CLICKED(IDC_RADIO9, OnRadio9) 
	ON_BN_CLICKED(IDC_BUTTON_SHOW2, OnButtonShow2) 
	ON_BN_CLICKED(IDC_BUTTON_HIDE2, OnButtonHide2) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// DoTest message handlers 
 
 
void DoTest::OnButtonDown()  
{ 
	// TODO: Add your control notification handler code here 
  
	m_button_up.EnableWindow(TRUE); 
	page++;                   //全局变量 
	if(page==26) m_button_down.EnableWindow(FALSE); 
    static	char *str[]={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26"}; 
    GetDlgItem(IDC_STATIC_PAGE)->SetWindowText(str[page-1]); 
   
    TextShow(); 
 
  GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
  GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
  GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
  GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("");  
	 
} 
 
void DoTest::OnButtonLsxs() //临时显示 
{ 
	// TODO: Add your control notification handler code here 
	m_button_show.EnableWindow(FALSE); 
	m_button_lsxs.EnableWindow(FALSE); 
//--------------------------------- 
	int len; 
    len=strlen(m_edit_text);   
    len=len/2+len/2;                      //使len成为偶数 
	if(len<39)    //选择了练习 
	{ 
       MyShowing(); 
	}   
	else  
	   GetDlgItem(IDC_STATIC_TS)->SetWindowText(""); //处理len==40的情况 
//------------------------------- 
    GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	 
} 
 
void DoTest::OnButtonShow()  
{ 
	// TODO: Add your control notification handler code here 
	showFlag=1; 
	m_button_ycts.EnableWindow(TRUE); 
	m_button_show.EnableWindow(FALSE); 
	m_button_lsxs.EnableWindow(FALSE); 
 
	int len; 
    len=strlen(m_edit_text);   
    len=len/2+len/2;                      //使len成为偶数 
	if(len<39)    //选择了练习 
	{ 
       MyShowing(); 
	}  // len<39     //选择了练习 
	else  
	   GetDlgItem(IDC_STATIC_TS)->SetWindowText(""); //处理len==40的情况 
 
    GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	 
} 
 
void DoTest::OnButtonShow2()  
{ 
	// TODO: Add your control notification handler code here 
	showFlag2=1; 
	m_button_hide2.EnableWindow(TRUE); 
	m_button_show2.EnableWindow(FALSE); 
	    GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("除第1码外,可用“[”号代替不清楚的码进行输入");    
    GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	 
} 
void DoTest::OnButtonHide2()  
{ 
	// TODO: Add your control notification handler code here 
	if(m_radio_lx < 1)	 
	{ 
		MessageBox("请选择练习!","注意",MB_ICONINFORMATION); 
        GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	} 
    else  
	{ 
	showFlag2=0; 
	m_button_hide2.EnableWindow(FALSE); 
	m_button_show2.EnableWindow(TRUE); 
    GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("");    
	} 
} 
 
void DoTest::OnButtonUp()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	page--;                   //全局变量 
	if(page==1)	m_button_up.EnableWindow(FALSE); 
    static char *str[]={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26"}; 
    GetDlgItem(IDC_STATIC_PAGE)->SetWindowText(str[page-1]); 
 
    TextShow(); 
	 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
    GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
    GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
    GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("");  
	 
} 
 
 
void DoTest::OnButtonYcts() //隐藏提示 
{ 
	// TODO: Add your control notification handler code here 
	if(m_radio_lx < 1)	 
	{ 
		MessageBox("请选择练习!","注意",MB_ICONINFORMATION); 
        GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	} 
    else  
	{ 
	  showFlag=0; 
	  m_button_show.EnableWindow(TRUE); 
	  m_button_lsxs.EnableWindow(TRUE); 
	  m_button_ycts.EnableWindow(FALSE); 
	  GetDlgItem(IDC_STATIC_TS)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS6)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS7)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS1)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
	  GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
      GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	} 
	 
} 
 
void DoTest::OnChangeEditText()  
{ 
	// TODO: If this is a RICHEDIT control, the control will not 
	// send this notification unless you override the CDialog::OnInitDialog() 
	// function and call CRichEditCtrl().SetEventMask() 
	// with the ENM_CHANGE flag ORed into the mask. 
	// TODO: Add your control notification handler code here 
	if(showFlag==0) 
	{ 
	  m_button_show.EnableWindow(TRUE); 
	  m_button_lsxs.EnableWindow(TRUE); 
	} 
 
	GetDlgItem(IDC_EDIT_TEXT)->GetWindowText(m_edit_text); 
 
	int len; 
    len=strlen(m_edit_text); 
 
//-----------------输入速度--------------------------------------------- 
	if(len==2) 
	{ 
		time1=GetMessageTime(); 
 
	} 
	if(len>38) 
	{ 
		time2=GetMessageTime(); 
        timeWeight=(time2-time1)/100;      //  精确到 1/10 秒 
		speed=(20*600)/timeWeight;         //  每分钟多少字,其中每行20个字 
 	    _ltoa((long)speed,speedStr,10); 
		strcat(speedStr," 字∕分钟"); 
	   GetDlgItem(IDC_STATIC_SPEED)->SetWindowText(speedStr);  
	   m_static_ts8=speedStr; 
        
	} 
//---------------------------------------------------------------------- 
	CString hand,buf="↑"; 
	char bufstr[43]; 
	strcpy(bufstr,m_edit_text); 
	for(int i=0;iSetWindowText(hand);  
//--------------------------------- 
	if(m_radio_lx<1) 
	{ 
		MessageBox("请选择练习!","注意",MB_ICONINFORMATION); 
        GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	    showFlag=1; 
	    m_button_show.EnableWindow(FALSE); 
	    m_button_lsxs.EnableWindow(FALSE); 
	    m_button_ycts.EnableWindow(TRUE); 
		return; 
	} 
    if(showFlag2==1) 
	{ 
	    if(len==1 || len==2 || len==16) m_static_ts8="输入窗口中的第1个字可用空格键送出"; 
	    if(len==4 || len==18|| len==30) m_static_ts8="第2个字可用点号键(L右下角的那个键)送出"; 
	    if(len==6 || len==20|| len==32) m_static_ts8="含有“;”脚标的字可用分号键(L右侧的那个键)送出"; 
	    if(len==8 || len==22|| len==34) m_static_ts8="重码字的第1个将被后边的输入自动顶出"; 
	    if(len==10 ||len==24|| len==36) m_static_ts8="按“-”号键向前翻页  按“=”号键向后翻页"; 
	    if(len==12 ||len==26|| len==38) m_static_ts8="除第1码外,可用“[”号代替不清楚的码进行输入"; 
	    if(len==14 ||len==28) m_static_ts8="将一个字粘贴到造词软件中即可知道该字的码"; 
	    GetDlgItem(IDC_STATIC_SPEED)->SetWindowText(m_static_ts8);    
	} 
	else 
	{ 
	    GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("");    
	} 
 
    len=len/2+len/2;                      //使len成为偶数 
 
	if(len<39 && showFlag==1)    //选择了练习 
	{ 
        MyShowing(); 
	}   
	else if(len<39 && showFlag==0)  
	{ 
	      GetDlgItem(IDC_STATIC_TS)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS6)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS7)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS1)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
	      GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
	} 
	else //(len>=39)//编辑框中的输入已达到最大字节数                                                         //处理len==40的情况 
	{ 
	       m_button_up.EnableWindow(TRUE); 
/*		   char tempstring[46],tempbuff[46]; 
		   strcpy(tempstring,m_edit_text); 
			   tempbuff[0]=tempstring[38];  //得到编码框的第20个字 
			   tempbuff[1]=tempstring[39]; 
			   tempbuff[2]='\0'; 
               tempstring[0]=targetString[38];  //得到参照框的第20个字 
               tempstring[1]=targetString[39]; 
               tempstring[2]='\0'; 
*/ 
//           if(strcmp(tempbuff,tempstring)==0 && page<=25) 
           if(strcmp(targetString,m_edit_text)==0 && page<=25) 
		   { 
	          page++;                   //全局变量 
              static	char *str[]={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26"}; 
              GetDlgItem(IDC_STATIC_PAGE)->SetWindowText(str[page-1]); 
   
		      TextShow(); 
 
		      GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
		      GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
		      GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
		      if(page==26) 
			  { 
			    m_button_down.EnableWindow(FALSE); 
			  } 
		   } 
		   else 
		   { 
	           GetDlgItem(IDC_STATIC_TS)->SetWindowText("");  
	           GetDlgItem(IDC_STATIC_TS6)->SetWindowText("");  
			   if(strcmp(m_edit_text,targetString)==0) 
	           GetDlgItem(IDC_STATIC_TS7)->SetWindowText("该练习已完成,请重新选择练习"); 
			   else 
	           GetDlgItem(IDC_STATIC_TS7)->SetWindowText("本行有错!请删除后重新输入");  
	           GetDlgItem(IDC_STATIC_TS1)->SetWindowText("");  
	           GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
	           GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
	           GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
		   } 
	} 
	 
	 
} 
 
void DoTest::OnRadio1()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=1; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
	 
} 
 
void DoTest::OnRadio10()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=10; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
	 
} 
 
void DoTest::OnRadio2()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=2; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
	 
} 
 
void DoTest::OnRadio3()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=3; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
	 
} 
 
void DoTest::OnRadio4()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=4; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
} 
 
void DoTest::OnRadio5()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=5; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
} 
 
void DoTest::OnRadio6()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=6; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1"); 
	 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
} 
 
void DoTest::OnRadio7()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=7; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
} 
 
void DoTest::OnRadio8()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=8; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus();  
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
	 
} 
 
void DoTest::OnRadio9()  
{ 
	// TODO: Add your control notification handler code here 
	m_button_down.EnableWindow(TRUE); 
	m_button_up.EnableWindow(FALSE); 
	m_radio_lx=9; 
	page=1; 
	GetDlgItem(IDC_STATIC_PAGE)->SetWindowText("1");  
 
    TextShow(); 
	 
	GetDlgItem(IDC_STATIC_TARGET)->SetWindowText(targetString);  
	GetDlgItem(IDC_EDIT_TEXT)->SetWindowText("");  
	GetDlgItem(IDC_EDIT_TEXT)->SetFocus(); 
	 
	GetDlgItem(IDC_STATIC_SPEED)->SetWindowText("根据提示输入“↑”所指处的汉字");  
} 
void DoTest::TextShow() 
{ 
	char b,buf[46]; 
	int i,j; 
	FILE *fp_xxmpxDat; 
    fp_xxmpxDat=fopen("Wxxmpx.mb","rb");        
    if(!fp_xxmpxDat)exit(0); 
 
   fseek(fp_xxmpxDat,44*((m_radio_lx-1)*26+page-1),SEEK_SET); 
    for(i=0;i<4;i++) 
	{ 
			fread(&b,1,sizeof(char),fp_xxmpxDat); 
			fread(buf,1,b,fp_xxmpxDat); 
			for(j=0;jSetWindowText(m_static_ts);   //显示汉字、字梁 
     GetDlgItem(IDC_STATIC_TS6)->SetWindowText(m_static_ts6);   //显示编码 
	 GetDlgItem(IDC_STATIC_TS7)->SetWindowText(m_static_ts7);   //显示补充说明 
	  
 
//----------------------------------------------------显示四行字梁------------------- 
   for(k=0;k<63;k++)               //特殊字符从第1个到63个 
   { 
		 if(strcmp(temp_mbz,tszf[k])==0) 
			 break; 
   } 
   if(k<63 ) 
   { 
		 if(k<10) 
		 { 
	        GetDlgItem(IDC_STATIC_TS1)->SetWindowText(PerKeyShow[temp_mbm[0]-'a']);  
		 } 
		 else 
		 { 
            GetDlgItem(IDC_STATIC_TS1)->SetWindowText("");  
		 } 
 
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
   } 
   else 
   { 
 
     mlen=strlen(temp_mbm); 
       if((mlen==1)||(mlen==2 && temp_mbm[1]==';') || (mlen==3 && temp_mbm[2]==';'))  //单梁字 
	   { 
	        GetDlgItem(IDC_STATIC_TS1)->SetWindowText(PerKeyShow[temp_mbm[0]-'a']);  
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
	   } 
        if((mlen==2 && temp_mbm[1]!=';')||(mlen==4 && temp_mbm[3]==';'))             //双梁字 
	   { 
	        GetDlgItem(IDC_STATIC_TS1)->SetWindowText(PerKeyShow[temp_mbm[0]-'a']);  
			if(temp_mbm[1]!=temp_mbm[0]) 
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText(PerKeyShow[temp_mbm[1]-'a']);  
			else 
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
	   } 
       if(mlen==3 && temp_mbm[2]!=';')                                               //三梁字 
	   { 
	        GetDlgItem(IDC_STATIC_TS1)->SetWindowText(PerKeyShow[temp_mbm[0]-'a']);  
			if(temp_mbm[1]!=temp_mbm[0]) 
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText(PerKeyShow[temp_mbm[1]-'a']);  
			else 
            GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
			if((temp_mbm[2]!=temp_mbm[0]) && (temp_mbm[2]!=temp_mbm[1])) 
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText(PerKeyShow[temp_mbm[2]-'a']); 
			else 
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText("");  
            GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
	   } 
       if(mlen==4 && temp_mbm[3]!=';')                                   //四梁字或词组 
	   { 
	        GetDlgItem(IDC_STATIC_TS1)->SetWindowText(PerKeyShow[temp_mbm[0]-'a']); //位置1 
 
			if(temp_mbzl[2]>='a' && temp_mbzl[2] <='z')  //如果该位置是识别码       //位置2 
                GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
			else 
			{ 
			    if(temp_mbm[1]!=temp_mbm[0]) 
                GetDlgItem(IDC_STATIC_TS2)->SetWindowText(PerKeyShow[temp_mbm[1]-'a']);  
				else 
                GetDlgItem(IDC_STATIC_TS2)->SetWindowText("");  
			} 
                                                                                    //位置3 
			if(temp_mbm[2]==temp_mbm[0]) 
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText(""); 
			else if(temp_mbm[2]==temp_mbm[1] && (temp_mbzl[2]<'a'||temp_mbzl[2]>'z')) 
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText(""); 
			else 
            GetDlgItem(IDC_STATIC_TS3)->SetWindowText(PerKeyShow[temp_mbm[2]-'a']);  
                                                                                    //位置4 
			if((temp_mbzl[5]>='a' && temp_mbzl[5] <='z') ||(temp_mbzl[6]>='a' && temp_mbzl[6] <='z'))  //如果该位置是识别码 
                GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
			else 
			{ 
				if( temp_mbm[3]==temp_mbm[0] || temp_mbm[3]==temp_mbm[2]) 
                GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
				else if( (temp_mbm[3]==temp_mbm[1]) && (temp_mbzl[2]<'a'||temp_mbzl[2]>'z')) 
                GetDlgItem(IDC_STATIC_TS4)->SetWindowText("");  
				else 
                GetDlgItem(IDC_STATIC_TS4)->SetWindowText(PerKeyShow[temp_mbm[3]-'a']);  
			} 
	   } 
   }         //else 
}