⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlg_exam.c

📁 利用microwindows实现英英词典 此为功能文件
💻 C
字号:
/*-------------------------------------------------*
* $RCSfile$
* $Date$
* $Author$
* $Log$
* Revision 1.5  2004/12/31 08:47:41  lzw
* ok in dvp!
* good!
*
* Revision 1.4  2004/12/22 08:27:35  lzw
* vc run ok!
* first check in
*
* Revision 1.3  2004/11/25 09:46:23  lzw
* BugId:v6100-
* example ok! ! !
*
* Revision 1.2  2004/11/25 03:37:42  lzw
* BugId:v6100-
* example moving in the whole over
*
* Revision 1.1  2004/11/24 09:52:12  lzw
* BugId:v6100-
* add dlg_exam.c c file
*
* Function	:
* Usage         :
* Version	:
* Return Code   :
* Revision      :
* Remark        :
*--------------------------------------------------*/

#pragma far_pid_on
#pragma far_pic_on

#include "cb_dic/cb_dic.h"



/*******************************************************
*Func:	 enter example of  word(when come from detail)
*In:	 hwnd -> window header
	 logic_id -> the number in one srceen
*Out:	 *word_detail -> save detail of word
*I/O:
*Modify:
*Return:
*Author: 
********************************************************/
void init_exam( HWND hwnd, CB_WORD_DETAIL *word_detail )
{
	UCHAR exam_buf[EXAM_DATA_BUF];
	if(word_detail->lj_id_num > 0){
		SetWindowText( GetDlgItem( hwnd, TXT_WORD ), word_detail->data.word );
#if LINUX_FS
		bzero(exam_buf,EXAM_DATA_BUF);
#else
		memset(exam_buf,0,EXAM_DATA_BUF);
#endif
		cba_get_exam(word_detail->lj_id_queue[word_detail->cur_lj_no],exam_buf);
		SetWindowText( GetDlgItem( hwnd, EDT_EXAM ), exam_buf);
		SetFocus( GetDlgItem( hwnd, EDT_DETAIL ) );
	}
}

/*********************************************
*Func:	 example process
*In:
*Out:
*I/O:
*Modify:
*Return:
*Author: 
**********************************************/
LRESULT CALLBACK dlgExamProc( HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam )
{
	HDC hdc;
	PAINTSTRUCT ps;
	static CB_WORD_DETAIL*	p_word_detail=NULL;

	switch ( iMsg ) {
		case WM_CREATE:
#if LINUX_FS
			(MWBRUSHOBJ *)hwnd->pClass->hbrBackground = GetStockObject( WHITE_BRUSH );
#endif
			break;
		case WM_INITDIALOG:
			p_word_detail = (CB_WORD_DETAIL *)lParam;
			SetWindowText( GetDlgItem( hwnd, TXT_WORD ), p_word_detail->data.word);
			p_word_detail->cur_lj_no = 0;
			init_exam( hwnd, p_word_detail );
			break;

		case WM_KEYDOWN:
			switch( LOWORD( wParam ) ) {
				case VK_LEFT:
					if(p_word_detail->cur_lj_no > 0){
						p_word_detail->cur_lj_no--;
						init_exam( hwnd, p_word_detail );
					}
					break;
				case VK_RIGHT:
					if(p_word_detail->cur_lj_no < p_word_detail->lj_id_num-1){
						p_word_detail->cur_lj_no++;
						init_exam( hwnd, p_word_detail );
					}
					break;
			}
			break;
		case WM_KEYUP:
			switch( LOWORD( wParam ) ) {
				case VK_ESCAPE:
					EndDialog( hwnd, TRUE );
					break;
			}			
			break;
		case WM_PAINT:
			hdc = BeginPaint( hwnd, &ps ); 
			MoveToEx( hdc, 0, 14, NULL );
			LineTo( hdc, V6100_WIDTH, 14 );
			MoveToEx( hdc, 0, 15, NULL );
			LineTo( hdc, V6100_WIDTH, 15 );
			EndPaint( hwnd, &ps ); 
			break;
		default:
			return DefWindowProc( hwnd, iMsg, wParam, lParam );
	}
	return ( FALSE );
}
#pragma far_pic_off
#pragma far_pid_off

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -