文档库 最新最全的文档下载
当前位置:文档库 › VC++学习宝典

VC++学习宝典

VC++学习宝典
VC++学习宝典

《孙鑫VC++视频教程》教程笔记

第一课

1.MFC生成的C++源文件中都有StdAfx.h,此文件包含了常用的AFX函数的声明,其中有afxwin.h,此文件包含了CRECT,CPoint,CWnd等许多类及其方法的声明。

2.Project->Setting->Debug可以加入命令行参数。

3.在SDK中要加入"windows.h"和stdio.h。因为LoadCursor,MessageBox等函数的声明在这个文件中。

4.创建一个完整的窗口的四个步骤SDK,1设计窗口类,2注册窗口类,3创建窗口,4显示窗口

5.函数名可以代表函数代码的首地址,即可作为函数指针。

6.要查看VC数据类型,可以在MSDN中输入“BOOL”然后选择“DATA TYPE”。

7.atof将字符串转化为float,atoi将字符串转化为int型。

8.所有从CWnd类派生的类都有m_hWnd句柄。

9.变量的生命周期:可以认为出了包含它的大括号,这个变量的生命周期结束。所以全局变量的声明位于所有大括号之外。但是用new声明的变量和用static声明的变量除外。

10.SDK示范程序,见下面。

11.sprintf格式化字符,其头文件为stdio.h,在MFC中格式化字符用CString.Format

12.GetDC()与ReleaseDC()要成对使用,否则会内存泄漏。同样,BeginPaint()与EndPaint()。

13.GetStockObject()得到画笔、画刷、字体、调色板的句柄,使用时必须用类型转换。

14.什么时候用NULL,什么时候用0.答,对指针赋值时用NULL,对变量赋值时用0.

15.什么是野指针?答:将指针指向的变量的内存释放后,此指针即变成野指针!如何避免野指针?答:将此指针指向NULL即可。p=NULL;

16.SDK代码流程:

#include "windows.h"//包含头文件LoadCursor,TextOut等函数

#include "stdio.h"//包含sprintf,printf等函数

LRESULT CALLBACK MyProc(...);//声明回调函数

int WINAPI WinMain()

{

WNDCLASS wndcls;//设计窗口类

wndcls.hcursor=LoadCursor();//初始化

....

RegisterClass(&wndcls);//注册窗口类

hwnd=CreateWindow(...);//创建窗口

ShowWindow(..);//显示窗口

UpdateWindow(..);

MSG msg;//定义消息结构体

while(GetMessage(...))//消息循环

{

...

}

return 0;

}

LRESULT CALLBACK MyProc(...)//实现回调函数

{

switch(uMsg)

{

case WM_CHAR:

break;

...

}

}

第2课

1.定义结构体和类时别忘记在最后加入";"号!例如Class Point{int x;int y;};

2.#include 与#include "xxx.h"的区别:<>不查找运行时目录,""查找运行时目录!

3.类的定义中,如果未指明成员类型,则缺省为private.而结构体中则缺省为public.

4.引用:引用经常用在函数的传参上。另外数值交换函数也经常用引用。例

change(int &x,int &y){int temp;temp=x;x=y;y=x}调用时即可以用 int a=3;int b=4;change(a,b);一般不用指针来作为参数进行数值交换。因为会引起歧义。

5.通常将类的定义放.h文件,而将其实现放在cpp文件中,别忘记了在cpp文件中#include "xxx.h"

6.如何防止类的重复定义?

用#inndef Point_H_H

#define Point_H_H

class Point{};

#endif来防止

7.源文件cpp文件单独编译成obj文件。最后由链接器将与将要使用到的C++标准库类链接成exe文件,头文件不参加编译。所以在cpp文件中别忘记了加入#include "xxx.h"

8.函数的覆盖,在子类中重写父类的函数,此时采用早期绑定的方法。如果加入了virtual,则将采用迟绑定的技术,在运行时根据对象的类型确定调用哪一个函数。此迟绑定技术是MFC的类的继承的精髓。

9.强制类型转换。如果CFish从CAnimal派生而来。则可以将鱼的对象转换为CAnimal的对象,而反之则不行。从现实中理解也是正常的,鱼可以是动物,而动物却不是鱼。再如int可以强制转换成char型。而反之则出错。

第3课

1.在main或WinMain之前,全局变量已经被分配内存并初始化了。

2.在MFC中在WinMain之前有个theApp全局变量先被构造并被初始化,而由于子类构造函数执行前,其父类的构造函数先被执行,所以CTestApp的父类CWinAPP的构造函数先执行。产生了theApp对象后,在WinMain()中的指针*pThread和*pApp就有了内容。

3.MFC大致流程:

CTestApp theApp;//构造全局对象

WinMain()

{

AfxWinMain();//调用下面的函数

}

AfxWinMain()

{

pThread->Initinstance();//初始化工作和注册窗口类,窗口显示和更新

pThread->Run();//消息循环

}

而在BOOL CTestApp::InitInstance()中的代码

CSingleDocTemplate* pDocTemplate;

pDocTemplate = new CSingleDocTemplate(

IDR_MAINFRAME,

RUNTIME_CLASS(CTestDoc),

RUNTIME_CLASS(CMainFrame), // main SDI frame window

RUNTIME_CLASS(CTestView));

AddDocTemplate(pDocTemplate);

完成了将这三个类关联起来的工作。

4.如何在单文档文件中显示一个CButton的对象?

在CMainFrame::OnCreate()中定义一个CButton的对象btn;然后调用btn.Create("维新",WS_DISABLED |WS_CHILD | WS_VISIBLE | BS_AUTO3STATE,

CRect(0,0,300,100),/*GetParent(),*/this,123);

注意点:

(1).此处btn不能是局部变量,否则它的生命周期太短,将不能显示。

(2).在create函数的第二个参数中加入WS_VISIBLE 参数才行。否则必须调用ShowWindow

也可以在view的OnCreate消息响应函数中加入

(3).CButton类的定义头文件在afxwin.h中,而stdafx.h包含了afxwin.h,所以可以直接使用。因为MFC中的每一个类中都有#include "stdafx.h"的声明。

第4课

1.在单文档中view挡在MainFrame的前面。此时如果编写针对MainFrame的mouseClick事件,将不会有反应。

2.消息响应会在3处修改代码,1处是在头文件中,

//{{AFX_MSG(CDrawView)

afx_msg void OnLButtonDown(UINT nFlags, CPoint point);

afx_msg void OnLButtonUp(UINT nFlags, CPoint point);

afx_msg void OnMouseMove(UINT nFlags, CPoint point);

//}}AFX_MSG

DECLARE_MESSAGE_MAP()

另一处是cpp文件的begin MessageMap和End MessageMap之间,

BEGIN_MESSAGE_MAP(CDrawView, CView)

//{{AFX_MSG_MAP(CDrawView)

ON_WM_LBUTTONDOWN()

ON_WM_LBUTTONUP()

ON_WM_MOUSEMOVE()

//}}AFX_MSG_MAP

// Standard printing commands

ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)

END_MESSAGE_MAP()

最后是要有函数实现的代码。

void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)

{

// TOD Add your message handler code here and/or call default

m_ptOrigin=m_ptOld=point;

m_bDraw=TRUE;

CView::OnLButtonDown(nFlags, point);

}

3.画线:定义一个成员变量保存mouseDown的点m_Point

1)API函数方法画线用HDC

2)用CDC类成员函数画线。此时别忘记ReleaseDC

3)用CClientDC

4)用CWindowDC,用它甚至可以整个屏幕区域画线。

下面是上面4种方法的代码

/*HDC hdc;

hdc=::GetDC(m_hWnd);

MoveToEx(hdc,m_ptOrigin.x,m_ptOrigin.y,NULL);

LineTo(hdc,point.x,point.y);

::ReleaseDC(m_hWnd,hdc);必须成对使用。*/

/*CDC *pDC=GetDC();

pDC->MoveTo(m_ptOrigin);

pDC->LineTo(point);

ReleaseDC(pDC);必须成对使用。*/

//CClientDC dc(this);

/*CClientDC dc(GetParent());

dc.MoveTo(m_ptOrigin);

dc.LineTo(point);此处不需要ReleaseDC,因为CClientDC会自动释放DC*/

//CWindowDC dc(this);

//CWindowDC dc(GetParent());

/*CWindowDC dc(GetDesktopWindow());//此时可以在整个屏幕上画线。dc.MoveTo(m_ptOrigin);

dc.LineTo(point);*/

/*CPen pen(PS_DOT,1,RGB(0,255,0));

CClientDC dc(this);

CPen *pOldPen=dc.SelectObject(&pen);

dc.MoveTo(m_ptOrigin);

dc.LineTo(point);

dc.SelectObject(pOldPen);*/

5)用Bitmap填充所画的矩形。

CBitmap bitmap;

bitmap.LoadBitmap(IDB_BITMAP1);

CBrush brush(&bitmap);

CClientDC dc(this);

dc.FillRect(CRect(m_ptOrigin,point),&brush);

//CBRUSH::FromHandle是静态成员函数,所以可以用下面的方法调用。

CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));

CBrush *pOldBrush=dc.SelectObject(pBrush);

dc.Rectangle(CRect(m_ptOrigin,point));

dc.SelectObject(pOldBrush);

m_bDraw=FALSE;

6)用其它颜色画线

CClientDC dc(this);

CPen pen(PS_SOLID,1,RGB(255,0,0));

CPen *pOldPen=dc.SelectObject(&pen);//选中红色画笔

if(m_bDraw==TRUE)

{

dc.SetROP2(R2_BLACK);//设置绘画模式

dc.MoveTo(m_ptOrigin);

//dc.LineTo(point);

dc.LineTo(m_ptOld);

//dc.MoveTo(m_ptOrigin);

dc.MoveTo(m_ptOld);

dc.LineTo(point);

//m_ptOrigin=point;

m_ptOld=point;

}

dc.SelectObject(pOldPen);

4.MFC中隐式的包含了windows.h。为什么?

因为在AFXV_W32.h文件中:

// This is a part of the Microsoft Foundation Classes C++ library.

// Copyright (C) 1992-1998 Microsoft Corporation

// All rights reserved.

在AFXWIN.h中

// Note: WINDOWS.H already included from AFXV_W32.H

5.如何从句柄获得对象的指针?

答FromHandle

6.类的静态成员函数可以由类名直接调用,也可以由对象调用。可以认为静态成员函数并不属于某个对象,它属于类本身。程序运行伊始,即使没有实例化类的对象,静态成员函数和静态成员变量已然有其内存空间。静态成员函数不能访问非静态成员变量!静态成员变量必须在类的外部初始化。当然如果并不打算用到静态成员变量,此时你可以不初始它。

7.理解代码区,数据区,堆,栈!

请见下面的简介:

https://www.wendangku.net/doc/2c12715368.html,/server/j_server/J_1010.Html

对于一个进程的内存空间而言,可以在逻辑上分成3个部份:代码区,静态数据区和动态数据区。动态数据区一般就是“堆栈”。“栈(stack)”和“堆(heap)”是两种不同的动态数据区,栈是一种线性结构,堆是一种链式结构。进程的每个线程都有私有的“栈”,所以每个线程虽然代码一样,但本地变量的数据都

是互不干扰。一个堆栈可以通过“基地址”和“栈顶”地址来描述。全局变量和静态变量分配在静态数据区,本地变量分配在动态数据区,即堆栈中。程序通过堆栈的基地址和偏移量来访问本地变量。

8.抽空看看李维的《悟透Delphi》

有一回,我梦见自己变成了计算机时空世界里的一个对象。随着计算机世界的不断发展,我们这些对象已经不再象原始时代的对象那样仅仅为了获得生存的资源而不停的忙碌。我们的思想空前活跃,我门不但思考我们为什么要在计算机世界里生存和运行,而且还大胆的研究和探索计算机世界的未知奥秘。我们已经知道整个计算机世界都是由字节这一基本粒子构成,而字节又是由八个更细小的位粒子构成;我们还知道物质不灭定律,即任何一个对象的灭亡,只意味着对象结构的解体,并不会减少计算机世界中的任何字节或位粒子,而着这些物质又可能成为别的对象的一部分;甚至,我们还知道我们所处的世界是一个球体,因为,在越过经度$FFFFFFFF又回到了原点$00000000的位置。著名的物理学家对象牛顿早就发现各种对象之间存在一种普遍的联系,并且在对象的运动速度与对象大小的关系方面提出了著名的理论--牛顿力学。可是,后来牛顿这个对象却一直搞不懂到底是什么力量在无形地推动各种对象的运动。因此,他认为一定是创造整个计算机世界的上帝在推动各种对象的运动。后来他成了上帝最虔诚的信徒。在牛顿对象死后不久,我们的计算机世界又诞生了一个更伟大的对象。他基于先有代码的执行才有执行的结果这一基本的因果论,提出了进程运动的时空是相对的这一伟大理论。他认为,在一个运动中进程空间中看另一个运动中的进程空间,时间和空间都不是绝对的,空间会弯曲。而且,任何对象的运动速度绝对不可能超过CPU的速度,CPU速度就是我们计算机世界里的光速。这位伟大的科学对象的名字就叫爱因斯坦,他的相对论在一开始是不被对象们理解的,可是后来的科学探索都证明了这一理论的正确性。他提出的代码能量和数据物质可以相互转换的理论,也后来制造的大规模毁灭性病毒核武器中得到验证。

在梦的世界里,我快乐极了。我一会儿变一变我的属性,一会儿又动动我的方法,一会儿感受一下外来的事件。没错,我确实就是一个实实在在的对象!过了一会我突然明白,我本来就是一个对象,只是这个对象在梦中变成了现实世界的我……哈哈!

第5课

1.CWnd::CreateSolidCaret创建插入符,ShowCaret()显示插入符。GetTextMetrics(),获得当前字体的一些信息。CWnd::CreateCaret()创建图象插入符

bitmap.LoadBitmap(IDB_BITMAP1);//此处的bitmap为成员变量!!!

CreateCaret(&bitmap);

ShowCaret();

TEXTMETRIC tm;//字体结构体

dc.GetTextMetrics(&tm);//

m_ptOrigin.y+=tm.tmHeight;//获得字体高度。

2.VC中CString::LoadString(ID号),比较方便。

3.路径层的概念:有两种方法创建路径层:

(1)

pDC->BeginPath();

pDC->Rectangle(50,50,50+sz.cx,50+sz.cy);

pDC->EndPath();

pDC->SelectClipPath(RGN_DIFF);

(2)

CSize sz=pDC->GetTextExtent(str);

CRgn rn;

rn.CreateRectRgn(0,50,sz.cx,sz.cy);

pDC->SelectClipRgn(&rn,RGN_DIFF);

路径层有什么作用?可以保护我们先前的文本或者图像不被后来画的覆盖。

4.在View上输入文字的步骤。

CFont font;//创建字体对象

font.CreatePointFont(300,"华文行楷",NULL);//设置

CFont *pOldFont=dc.SelectObject(&font);//将字体选择到DC中

TEXTMETRIC tm;//创建字体信息对象

dc.GetTextMetrics(&tm);//获得当前字体信息

if(0x0d==nChar)//处理回车键

{

m_strLine.Empty();

m_ptOrigin.y+=tm.tmHeight;

}

else if(0x08==nChar)//处理退格键

{

COLORREF clr=dc.SetTextColor(dc.GetBkColor());

dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);

m_strLine=m_strLine.Left(m_strLine.GetLength()-1);

dc.SetTextColor(clr);

}

else

{

m_strLine+=nChar;

}

CSize sz=dc.GetTextExtent(m_strLine);

CPoint pt;//处理光标的位置

pt.x=m_ptOrigin.x+sz.cx;

pt.y=m_ptOrigin.y;

SetCaretPos(pt);

dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);//输出字体

dc.SelectObject(pOldFont);//将原先的字体选择回去。

5.模拟卡啦OK变色的步骤。

(1)设置定时器

(2)在定时器中加入如下代码

//DEL m_nWidth+=5;//此为view的成员变量,初始值为0

//DEL

//DEL

//DEL CClientDC dc(this);

//DEL TEXTMETRIC tm;

//DEL dc.GetTextMetrics(&tm);

//DEL CRect rect;

//DEL rect.left=0;

//DEL rect.top=200;

//DEL rect.right=m_nWidth;

//DEL rect.bottom=rect.top+tm.tmHeight;//此长方形的长度随着定时器的触发,逐渐增大

//DEL

//DEL dc.SetTextColor(RGB(255,0,0));

//DEL CString str;

//DEL str.LoadString(IDS_WEIXIN);

//DEL dc.DrawText(str,rect,DT_LEFT);此函数的作用是将字符串输出到长方形中,但如果字符串的长度超过长方形的长度,多余的字符将被截断

//DEL

//DEL rect.top=150;

//DEL rect.bottom=rect.top+tm.tmHeight;

//DEL dc.DrawText(str,rect,DT_RIGHT);

//DEL

//DEL CSize sz=dc.GetTextExtent(str);获得字符串的长度

//DEL if(m_nWidth>sz.cx)当长方形的长度大于字符串的长度后,将其重新归0

//DEL {

//DEL m_nWidth=0;

//DEL dc.SetTextColor(RGB(0,255,0));

//DEL dc.TextOut(0,200,str);

//DEL }

//DEL

//DEL CView::OnTimer(nIDEvent);

6.SetTimer也可以用回调函数来操作,但并不方便。以下是步骤

(1)在View的OnCreate消息响应函数中:SetTimer(1,1000,Timer2Proc);

(2)回调函数的实现:

void CALLBACK EXPORT Timer2Proc(

HWND hWnd, // handle of CWnd that called SetTimer

UINT nMsg, // WM_TIMER

UINT nIDEvent, // timer identification

DWORD dwTime // system time

)

{

// MessageBox((((CMainFrame *)AfxGetMainWnd())->m_hWnd),"ddfaf","weixin",0);

;

CMainFrame *pMain=(CMainFrame *)AfxGetApp()->m_pMainWnd;//获得MainFrame的指针

CTextView *pView=(CTextView *)pMain->GetActiveView();//获得view的指针

CClientDC dc(pView);//构造DC

dc.TextOut(333,222,"hello world");

}//我们可以看出,使用回调函数时要获得窗口或者APP的指针,给我们的操作带来麻烦。并不方便。

第6课

1.当对某菜单添加消息响应函数时,4个类的消息响应优先次序分别是:

1.View;

2.CDOC;

3.CMainFrame.

4.CWinAPP.为什么?请参阅《深入浅出》

2.消息分类:a;标准消息(以WM_开头的消息,但不包括ON_COMMAND);b;命令消息 ON_COMMAND(IDM_PHONE1, OnPhone1),菜单和工具栏的消息。c.通告消息:按钮,列表框发出的消息。

CCmdTarget只能接受命令消息。而从CCmdTarget派生的CWnd可以接收命令消息,也可以接受标准消息。

3.确定菜单的索引号,注意从0开始,分隔符也算数。什么叫弹出菜单(Popup Menu)?一个子菜单只能有一个缺省菜单。 //GetMenu()->GetSubMenu(0)->SetDefaultItem(5,TRUE);

str.Format("x=%d,y=%d",GetSystemMetrics(SM_CXMENUCHECK),

GetSystemMetrics(SM_CYMENUCHECK));//获得系统的菜单的位图的大小。

/* SetMenu(NULL);//移除菜单

CMenu menu;

menu.LoadMenu(IDR_MAINFRAME);

SetMenu(&menu);

menu.Detach();*/增加菜单,此处detach(),如果是局部变量。

4.

void CMainFrame::OnUpdateEditCut(CCmdUI* pCmdUI)

{

if(2==pCmdUI->m_nIndex)

pCmdUI->Enable();//当此菜单显示时,设为可用。

}

5.右键弹出菜单功能的实现方法有两个:

a.Project->Add to Project->component and controls->文件夹VC components->Popup Menu OK

b.用TrackPopupMenu()实现。

CMenu menu;

menu.LoadMenu(IDR_MENU1);

CMenu *pPopup=menu.GetSubMenu(0);

ClientToScreen(&point);

pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,

GetParent());

6.动态创建菜单的方法:

CMenu menu;

menu.CreatePopupMenu();

// GetMenu()->AppendMenu(MF_POPUP,(UINT)menu.m_hMenu,"WinSun");

GetMenu()->InsertMenu(2,MF_BYPOSITION | MF_POPUP,(UINT)menu.m_hMenu,"WinSun");

menu.AppendMenu(MF_STRING,IDM_HELLO,"Hello");

menu.AppendMenu(MF_STRING,112,"Weixin");

menu.AppendMenu(MF_STRING,113,"Mybole");

menu.Detach();

GetMenu()->GetSubMenu(0)->AppendMenu(MF_STRING,114,"Welcome");

GetMenu()->GetSubMenu(0)->InsertMenu(ID_FILE_OPEN,

MF_BYCOMMAND | MF_STRING,115,"维新");

// GetMenu()->DeleteMenu(1,MF_BYPOSITION);

// GetMenu()->GetSubMenu(0)->DeleteMenu(2,MF_BYPOSITION);

7.为动态创建的菜单增加消息响应的步骤

a.在resource.h中增加#define IDM_HELLO 123

b.在MainFrm.h中加入afx_msg void OnHello();

c.MainFrm.cpp中加入ON_COMMAND(IDM_HELLO,OnHello)

d.最后加入

void CMainFrame::OnHello()

{

MessageBox("Hello!");

}

8.动态增加电话号码本步骤

a.处理WM_Char消息。如果回车,则清空字符串,窗口重绘invalidate,将人名加入到菜单中,将字符

串保存集合类CStringArray中,用的是成员函数Add方法。

b.取出动态创建的菜单的数据的方法。

1)创建一个弹出菜单,弹出菜单下面有4个子菜单。将子菜单的ID号连续。

2)在resource.h中添加#define IDM_PHONE1 123....

3)添加其消息响应函数。注意注释中的文字

BEGIN_MESSAGE_MAP(CMenu2View, CView)

//{{AFX_MSG_MAP(CMenu2View)

ON_WM_CHAR()

ON_COMMAND(ID_EDIT_COPY, OnEditCopy)//下面的4句代码原来在此处。

//}}AFX_MSG_MAP

// Standard printing commands

ON_COMMAND(IDM_PHONE1, OnPhone1)//一定要这4句代码移到此处。

ON_COMMAND(IDM_PHONE2, OnPhone2)

ON_COMMAND(IDM_PHONE3, OnPhone3)

ON_COMMAND(IDM_PHONE4, OnPhone4)

ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)

END_MESSAGE_MAP()

4)填写代码

9.如何在MainFrame中拦截OnCommand消息?答,在它增加OnCommand的消息处理函数即可。

10.错误调试方法:Missing ";" before "*"

CMenu2Doc* GetDocument();//因为CMenu2Doc是个不认识的变量,将其头文件包含进即可。

第7课

1.如果在SDI中要调用对话框

a.先插入一个对话框资源;

b.然后在ClassWizards中为其创建一个类。其目的是比较方便为添加按纽和消息响应函数。

c.然后实例化它。在实例化时,必须将其头文件包含进去。

2.创建非模态对话框,注意它不能是局部变量。当点击非模态对话框的OnOK按纽时,它并没有关闭,而

是隐藏了。需要调用destroyWindow().

3.一个对象只能一个按纽。为什么?因为在Wincore.cpp的628行有代码 ASSERT(pWnd->m_hWnd == NULL); // only do once而创建后它的m_hWnd就不为0了。此处ASSERT的用法是如果括号里面不为真,则程序

崩溃。

4.如何为静态文本框增加消息响应?首先将IDC_STATIC改名。同时还需要将Notify特性复选中。

5.完成加法功能。

a.GetDlgItem();

b.GetDlgItemText();

c.GetDlgItemInt();

d.将IDC_EDIT1关联CEDIT类型变量

e.将IDC_EDIT1关联int型变量。注意调用 UpdateData();

f. //::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)ch1); //::SendMessage(m_edit1.m_hWnd,WM_GETTEXT,10,(LPARAM)ch1);

//GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT,10,(LPARAM)ch1);

m_edit1.SendMessage(WM_GETTEXT,10,(LPARAM)ch1);

g. SendDlgItemMessage(IDC_EDIT1,WM_GETTEXT,10,(LPARAM)ch1);

SendDlgItemMessage(IDC_EDIT2,WM_GETTEXT,10,(LPARAM)ch2);

6.点击按纽改变窗口尺寸

if(GetDlgItemText(IDC_BUTTON2,str),str=="收缩<<")

{

SetDlgItemText(IDC_BUTTON2,"扩展>>");

static CRect rectLarge;

static CRect rectSmall;

if(rectLarge.IsRectNull())

{

CRect rectSeparator;

GetWindowRect(&rectLarge);

GetDlgItem(IDC_SEPARATOR)->GetWindowRect(&rectSeparator);

rectSmall.left=rectLarge.left;

rectSmall.top=rectLarge.top;

rectSmall.right=rectLarge.right;

rectSmall.bottom=rectSeparator.bottom;

}

if(str=="收缩<<")

{

SetWindowPos(NULL,0,0,rectSmall.Width(),rectSmall.Height(),

SWP_NOMOVE | SWP_NOZORDER);

}

else

{

SetWindowPos(NULL,0,0,rectLarge.Width(),rectLarge.Height(),

SWP_NOMOVE | SWP_NOZORDER);

}

7.回车时将输入焦点移动到下一个控件

SetWindowLong()改变窗口的属性。

方法1:

改变控件的回调函数,注意IDC_EDIT1的MultiLine要复选上。

WNDPROC prevProc;

LRESULT CALLBACK WinSunProc(

HWND hwnd, // handle to window

UINT uMsg, // message identifier

WPARAM wParam, // first message parameter

LPARAM lParam // second message parameter

)

{

if(uMsg==WM_CHAR && wParam==0x0d)

{

//::SetFocus(::GetNextWindow(hwnd,GW_HWNDNEXT));

//SetFocus(::GetWindow(hwnd,GW_HWNDNEXT));

CString str;

str.Format("%d",hwnd);

AfxMessageBox(str);//, UINT nType = MB_OK, UINT nIDHelp = 0 );

// AfxGetApp()->

SetFocus(::GetNextDlgTabItem(::GetParent(hwnd),hwnd,FALSE));

return 1;

}

else

{

return prevProc(hwnd,uMsg,wParam,lParam);

}

}

BOOL CTestDlg::OnInitDialog()

{

CDialog::OnInitDialog();

// TOD Add extra initialization here

prevProc=(WNDPROC)SetWindowLong(GetDlgItem(IDC_EDIT1)->m_hWnd,GWL_WNDPROC,

(LONG)WinSunProc);//设置回调函数

return TRUE; // return TRUE unless you set the focus to a control

// EXCEPTION: OCX Property Pages should return FALSE

}

方法2:

在OnOK响应函数中加入代码

//GetDlgItem(IDC_EDIT1)->GetNextWindow()->SetFocus();

//GetFocus()->GetNextWindow()->SetFocus();

//GetFocus()->GetWindow(GW_HWNDNEXT)->SetFocus();

GetNextDlgTabItem(GetFocus())->SetFocus();

第8课对话框

1.如何改变按纽的字体?在对话框的属性中改变字体的属性即可

2.逃跑按纽的实现

1.从CButton派生一个类,CWeixinBtn

2.将IDC_EDIT1关联成员变量m_btn1,类型为CWeixinBtn,注意要包含头文件。

3.在CWeixinBtn中加一个指针成员变量CWeixinBtn *pWeixinBtn,然后将其地址初始化。

4.在新类中增加鼠标移动的消息处理。

3.属性表单

1.插入属性页资源。Insert->new Resource->Dialog

2.当选择Classwizard菜单时,系统提示是否为创建新的类,我们将其从CPropertyPage派生!这样可以为

方便为其增加消息响应函数。

3.插入新的从CPropertySheet派生的类,在类中增加3个CPropertyPage的实例。

4.在view中增加菜单项,当点击时显示属性表单,出现中文乱码,修改CPropertyPage属性为中文,另外将

其字体设为宋体。

5.在CPropertyPage中设置SetWizardButtons可将其属性改为上一步、完成!

6.为IDC_RADIO1关联成员变量,需要先设置Group属性才行。另外别忘记调用UpdateData().

7.为CPropertyPage增加虚函数,OnWizardNext,如果用户点击下一步时,不想让他进入下一步,刚返回-1

8.将用户的选择输出到屏幕上,此时可以在View中增加几个成员变量,用来接收用户选择的数据。

4.memset()的用法! memset(m_bLike,0,sizeof(m_bLike));

第9课

1.修改外观和图标可以在MainFrm中进行,而修改背景和光标只能在View中进行。为什么?因为view的显示挡

在了MainFrame的前面。

a.在MainFrame中

PreCreateWindow()中,在窗口创建之前,用重新注册窗口类的方法,比较麻烦。在PreCreateWindow ()中修改

也可以用简单的方法,用全局函数

//cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,0,0,

// LoadIcon(NULL,IDI_WARNING));

在窗口创建之后,在OnCreate()中修改

//SetWindowLong(m_hWnd,GWL_STYLE,WS_OVERLAPPEDWINDOW);

//SetWindowLong(m_hWnd,GWL_STYLE,GetWindowLong(m_hWnd,GWL_STYLE) & ~WS_MAXIMIZEBOX);

// SetClassLong(m_hWnd,GCL_HICON,(LONG)LoadIcon(NULL,IDI_ERROR));

b.在View中

PreCreateWindow()中

//cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,

// LoadCursor(NULL,IDC_CROSS),(HBRUSH)GetStockObject(BLACK_BRUSH),NULL);

cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW);

OnCreate()中

SetClassLong(m_hWnd,GCL_HBRBACKGROUND,(LONG)GetStockObject(BLACK_BRUSH));

SetClassLong(m_hWnd,GCL_HCURSOR,(LONG)LoadCursor(NULL,IDC_HELP));

2.创建一个不断变化的图标。用定时器和SetClassLong完成

a.准备三个图标文件,放在RES文件夹,Insert->Resource-三个图标,

b.在CMainFrame中增加图标句柄数组,m_hIcons[3]

m_hIcons[0]=LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE

(IDI_ICON1));//MAKEINTRESOURCE是一个宏,它将整数转化为Win32的资源类型,简单的说它是一个类型转换

#define MAKEINTRESOURCEA(i) (LPSTR)((DWORD)((WORD)(i)))

m_hIcons[1]=LoadIcon(theApp.m_hInstance,MAKEINTRESOURCE(IDI_ICON2));//此处需要用到

theAPP对象,故要在文件中声明extern CStyleApp theApp;

m_hIcons[2]=LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON3));

然后将其初始化

c.然后在定时器中实现

3.工具栏的编程

a.加入分隔符的方法,向右拖动即可;

b.删除按纽的方法,拖出即可。

4.创建一个新的工具栏的方法

a.插入一个工具栏,画出其图形。

b.在头文件中,定义CToolBar m_newToolBar

c.在MainFrm.cpp的OnCreate()中调用

if (!m_newToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_RIGHT

| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||

!m_newToolBar.LoadToolBar(IDR_TOOLBAR1))

{

TRACE0("Failed to create toolbar\n");

return -1; // fail to create

}

d.点击“新的工具栏”菜单时,隐藏工具栏。两种方法

第一种/*if(m_newToolBar.IsWindowVisible())

{

m_newToolBar.ShowWindow(SW_HIDE);

}

else

{

m_newToolBar.ShowWindow(SW_SHOW);

}

RecalcLayout();

DockControlBar(&m_newToolBar);*/

第二种ShowControlBar(&m_newToolBar,!m_newToolBar.IsWindowVisible(),FALSE);

e.将菜单增加复选标记。在OnUpdateUI中加入代码

pCmdUI->SetCheck(m_newToolBar.IsWindowVisible());

5.状态栏编程

a.Indicator[]数组中有状态栏的信息

如果要增加,可以在String Table中加入一个IDS_Timer,然后将其加入到[]中。

b.在时间栏显示时间,代码略,比较简单

6.进度栏

a.增加成员变量,CProgressCtrl m_progress

b.OnCreate中 m_progress.Create(WS_CHILD | WS_VISIBLE,// | PBS_VERTICAL,

rect,&m_wndStatusBar,123);

m_progress.SetPos(50);*/

c.将其创建到状态栏的方法!如果在OnCreate()中创建,则不成立,因为获取矩形大小时失败。

解决办法,用自定义消息:

在MainFrm.h中#define UM_PROGRESS WM_USER+1

afx_msg void OnProgress();

在MainFrm.cpp中

ON_MESSAGE(UM_PROGRESS,OnProgress)

然后实现这个函数

void CMainFrame::OnProgress()

{

CRect rect;

m_wndStatusBar.GetItemRect(2,&rect);

m_progress.Create(WS_CHILD | WS_VISIBLE | PBS_SMOOTH,

rect,&m_wndStatusBar,123);

m_progress.SetPos(50);

}

最后在OnCreate中调用 PostMessage(UM_PROGRESS);//不能用SendMessage()

d.解决重绘时进度栏改变的问题。在OnPain()中重写代码

CRect rect;

m_wndStatusBar.GetItemRect(2,&rect);

m_progress.Create(WS_CHILD | WS_VISIBLE | PBS_SMOOTH,

rect,&m_wndStatusBar,123);

m_progress.SetPos(50);

然后在定时器消息处理函数中加入

m_progress.StepIt();

e.显示鼠标位置。在View中增加OnMouseMove()处理函数

CString str;

str.Format("x=%d,y=%d",point.x,point.y);

//((CMainFrame*)GetParent())->m_wndStatusBar.SetWindowText(str);

//((CMainFrame*)GetParent())->SetMessageText(str);

//((CMainFrame*)GetParent())->GetMessageBar()->SetWindowText(str);

GetParent()->GetDescendantWindow(AFX_IDW_STATUS_BAR)->SetWindowText(str);

7.加入启动画面

Project-Component and ->Visual C++ Components->SplashScreen->插入

第10课

1.画图:

a.创建四个菜单,为其添加消息响应;

b.在View中添加m_DrawType,保存绘画类型;

c.增加成员变量,m_PtOrigin,当按下鼠标左键时,保存此点;

d.在OnLButtonUp中画点,线,矩形,椭圆,别忘记设置成透明画刷

2.为其添加一个设置对话框(线型和线宽)

a.创建对话框,为其创建一个新类关联它;

b.为其中的线宽关联成员变量;

c.在View中增加一个菜单,响应新的对话框;

d.添加线型选项设置,将其Group属性选中,并为单选按纽关联成员变量。在view中增加一个线型变量m_nLineStyle

3.添加一个颜色对话框

a.实例化一个CColorDialog

b.调用DoModal方法

4.添加字体对话框,将选择的字体在View中显示出来。

a.实例化一个对象;

b.为View添加一个字体成员变量,得到用户选择的字体。

c.调用Invadate()发出重绘消息;

d.再次注意一个对象只能创建一次,故要再次创建,必须将原告的删除!

5.为设置对话框增加示例功能。

a.当控件内容改变时,发出En_change消息。而Radio按纽则为Clicked。需先UpdateData()。另外还需要ScreenToClient(&rect)

6.改变对话框的背景色和控件颜色。

每个控件被绘制时都发出WM_CTlColor消息,

7.如何改变OK按纽的字体和背景?

OK按纽

a.创建一个新类,CTestBtn,基类为CButton

b.在类中增加虚函数,DrawItem,添加代码。

c.将OK按纽关联成员变量。类型为CTestBtn,注意将OK按纽的OwnerDraw特性选中。

Cancel按纽

用新类来改变。

a.加入新文件。

b.为Cancel关联一个成员变量,类型为CSXBtn;

c.调用CSXBtn的方法。

Cancel2按纽

a.方法同上。

8.在窗口中贴图,4个步骤

1、创建位图

CBitmap bitmap;

bitmap.LoadBitmap(IDB_BITMAP1);

2、创建兼容DC

CDC dcCompatible;

dcCompatible.CreateCompatibleDC(pDC);

3、将位图选到兼容DC中

dcCompatible.SelectObject(&bitmap);

4、将兼容DC中的位图贴到当前DC中。在WM_EraseBkgnd()中调用,但不能再调用基类的擦除背景函数。也可以在OnDraw函数中完成,但效率低,图像会闪烁,因为它先擦除背景,慢。

pDC->BitBlt(rect.left,rect.top,rect.Width(),

rect.Height(),&dcCompatible,0,0,SRCCOPY);

第11课

1.创建4个菜单,为其添加消息响应,用成员变量保存绘画类型。添加LButtonDown和Up消息。

2.当窗口重绘时,如果想再显示原先画的数据,则需要保存数据。为此创建一个新类来记录绘画类型和两个点。

class CGraph

{

public:

CPoint m_ptOrigin;//起点

CPoint m_ptEnd;//终点

UINT m_nDrawType;//绘画类型

CGraph();

CGraph(UINT m_nDrawType,CPoint m_ptOrigin,CPoint m_ptEnd);//此为构造函数。

virtual ~CGraph();

};

然后在void CGraphicView::OnLButtonUp(UINT nFlags, CPoint point)中加入如下代码

//CGraph graph(m_nDrawType,m_ptOrigin,point);//不能用局部变量

//m_ptrArray.Add(&graph);//加入这种指针数组中

/* OnPrepareDC(&dc);//这个函数中可以重新设置窗口原点,对于滚动条中,保存数据前要调用此函数 dc.DPtoLP(&m_ptOrigin);//将设备坐标转换为逻辑坐标

dc.DPtoLP(&point);//

CGraph *pGraph=new CGraph(m_nDrawType,m_ptOrigin,point);//在堆中创建新的对象

m_ptrArray.Add(pGraph);*///加入到指针数组中

在GraphicView.h中有如下代码

CPtrArray m_ptrArray;

在OnDraw中重画时调出数据

for(int i=0;i

3.在CView::OnPaint()调用了OnDraw(),但在void CGraphicView::OnPaint()中MFC的Wizard没有调用OnDraw(),要注意这个区别。如果你此时想调用,必须手动添加代码。 OnDraw(&dc);

4.让窗口具有滚动条的功能。

第1.将CGraphicView的头文件中的CView全部替换成CSrollView

第2.添加如下的代码

void CGraphicView::OnInitialUpdate()

{

CScrollView::OnInitialUpdate();

// TOD Add your specialized code here and/or call the base class

SetScrollSizes(MM_TEXT,CSize(800,600));//设置映射模式,设定窗口大小。OK!

}

5.坐标系的转换,此处不再详细介绍,需要时请查阅相关资料。

6.解决重绘时线跑到上面的问题。为什么会错位?因为逻辑坐标和设备坐标没有对应起来。

解决方法:

在OnLButtonDown画完图后,保存之前。调用

/* OnPrepareDC(&dc);//重新设置逻辑坐标的原点!!!

dc.DPtoLP(&m_ptOrigin);//设备坐标转化为逻辑坐标

dc.DPtoLP(&point);

CGraph *pGraph=new CGraph(m_nDrawType,m_ptOrigin,point);

m_ptrArray.Add(pGraph);*/

7.另外两种方法来保存数据。

一种是用CMetaFileDC

另一种是利用兼容DC,重绘时利用

pDC->BitBlt(0,0,rect.Width(),rect.Height(),&m_dcCompatible,0,0,SRCCOPY);

将兼容DC的图拷贝到屏幕DC上去。

此处不再详细介绍这两种方法,因为介绍多了容易搞晕。呵呵

第12课文件操作

1.常量指针与指针常量的区分

char ch[5]="lisi";

const char *pStr=ch;//const在*之前,表明指针指向的内容为常量,即为常量指针

char * const pStr=ch;//const在*之后,表明指针的地址不能改变,即为指针常量

明白?

2.对文件读写的三种方法

1.C中

FILE *pFile=fopen("1.txt","w");

fwrite("https://www.wendangku.net/doc/2c12715368.html,",1,strlen("https://www.wendangku.net/doc/2c12715368.html,"),pFile);

//fseek(pFile,0,SEEK_SET);

//fwrite("ftp:",1,strlen("ftp:"),pFile);

//fwrite("https://www.wendangku.net/doc/2c12715368.html,",1,strlen("https://www.wendangku.net/doc/2c12715368.html,"),pFile);

fclose(pFile);*/

//fflush(pFile);

2.C++中

/* ofstream ofs("4.txt");

ofs.write("https://www.wendangku.net/doc/2c12715368.html,",strlen("https://www.wendangku.net/doc/2c12715368.html,"));

ofs.close();*/

要包括头文件 "fstream.h"

3.MFC中用CFile类,哈哈!简单好用

CFileDialog fileDlg(FALSE);

fileDlg.m_ofn.lpstrTitle="我的文件保存对话框";

fileDlg.m_ofn.lpstrFilter="Text Files(*.txt)\0*.txt\0All Files(*.*)\0*.*\0\0"; fileDlg.m_ofn.lpstrDefExt="txt";

if(IDOK==fileDlg.DoModal())

{

CFile file(fileDlg.GetFileName(),CFile::modeCreate | CFile::modeWrite);

file.Write("https://www.wendangku.net/doc/2c12715368.html,",strlen("https://www.wendangku.net/doc/2c12715368.html,"));

file.Close();

}

4.利用win32 API函数 CreateFile(),及WriteFile()

4.注册表读写

1.对win.ini的读写

//::WriteProfileString("https://www.wendangku.net/doc/2c12715368.html,","admin","zhangsan");

/* CString str;

::GetProfileString("https://www.wendangku.net/doc/2c12715368.html,","admin","lisi",

str.GetBuffer(100),100);

AfxMessageBox(str);*/

2.注册表的读写

HKEY hKey;

DWORD dwAge=30;

RegCreateKey(HKEY_LOCAL_MACHINE,"Software\\https://www.wendangku.net/doc/2c12715368.html,\\admin",&hKey);

RegSetValue(hKey,NULL,REG_SZ,"zhangsan",strlen("zhangsan"));

RegSetValueEx(hKey,"age",0,REG_DWORD,(CONST BYTE*)&dwAge,4);

RegCloseKey(hKey);以上是写入

代码比较简单,不再详细介绍。本笔记也不是为介绍函数而存在的。嘿嘿

第13课文档与串行化

1.CArchive在菜单打开保存时的代码

CFile file("1.txt",CFile::modeCreate | CFile::modeWrite);

CArchive ar(&file,CArchive::store);

int i=4;

char ch='a';

float f=1.3f;

CString str("https://www.wendangku.net/doc/2c12715368.html,");

ar<

2.文档-视类结构简介

OnNewDocument在程序启动时被调用,此时可设置文档标题,也可以在String Table的IDR_MAINFRAME 的第二个"\"后改变文档的标题。须了解的7个字符串的用途,见PPT。

在WinAPP的InitInstance()中完成DOC,View,MainFrame的归一。

当点击系统的打开和新建菜单时,有一系列的步骤,孙鑫老师给我们跟踪了代码的调用过程,此段跟踪我们略过。但我们要牢记住:CWinAPP负责管理文档管理器,文档管理器有一个指针链表,且来保存文档模板的指针,文档模板指针管理三个类DOC,VIEW,MAINFRAME,使其为某文件对象服务。

3.利用CArchive来保存一个类的对象,此类必须支持串行化,需要5个步骤。

a.让类从CObject派生;

b.覆盖Serialize()函数,在其中完成保存和读取功能;

c.在.h中加入 DECLARE_SERIAL(CGraph);

d.在。cpp中加入IMPLEMENT_SERIAL(CGraph, CObject, 1 );

e.定义一个不带参数的构造函数。

保存绘画数据到文件的简单过程

a.在CGraph中增加一个画图的成员函数,其实不增加也行。可以在View中完成相应功能。

b.增加四个画图菜单,菜单可以从11课的代码中拷贝。

c.在View中增加LButtonDown和UP的响应,在UP中画图,在DOWN中保存点

d.利用CObArray集合类来保存绘画数据

e.在CGraphicDOC::Serialize()中保存和读取数据

f.然后在OnDraw中重绘。

4.新建和打开文档时,要注意销毁原来的数据。在DOC的DeleteContents虚函数中是好时机。代码如下 int nCount;

nCount=m_obArray.GetSize();

/*for(int i=0;i

{

delete m_obArray.GetAt(i);//释放指针指向的内存空间

//m_obArray.RemoveAt(i);//移除链表中的元素。嘿嘿,别搞错了。但在此处不能这样用,会导致非法操作。要用下面的方法沙

}

m_obArray.RemoveAll();*/

while(nCount--)

{

delete m_obArray.GetAt(nCount);

m_obArray.RemoveAt(nCount);

}

第14课网络编程

1.TCP流式套接字的编程步骤

在使用之前须链接库函数:工程->设置->Link->输入ws2_32.lib,OK!

服务器端程序:

1、加载套接字库

2、创建套接字(socket)。

3、将套接字绑定到一个本地地址和端口上(bind)。

4、将套接字设为监听模式,准备接收客户请求(listen)。

5、等待客户请求到来;当请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字(accept)。

6、用返回的套接字和客户端进行通信(send/recv)。

7、返回,等待另一客户请求。

8、关闭套接字。

客户端程序:

1、加载套接字库

2、创建套接字(socket)。

3、向服务器发出连接请求(connect)。

4、和服务器端进行通信(send/recv)。

5、关闭套接字。

服务器端代码如下:

#include //加裁头文件

#include //加载标准输入输出头文件

void main()

{

WORD wVersionRequested;//版本号

WSADATA wsaData;

int err;

wVersionRequested = MAKEWORD( 1, 1 );//1.1版本的套接字

err = WSAStartup( wVersionRequested, &wsaData );

if ( err != 0 ) {

return;

}//加载套接字库,加裁失败则返回

if ( LOBYTE( wsaData.wVersion ) != 1 ||

HIBYTE( wsaData.wVersion ) != 1 ) {

WSACleanup( );

return;

实验诊断学试题库(客观题)

实验诊断学试题库 选择题: 1下列临床常用标本中,不正确的是: A. 血常规实验中,最常用的抗凝剂为EDTA K2O B. 严重溶血的标本不能用于血《的测定。 C. 对于尿液一般常规检查,可用随机尿标本。 D. 采集脑脊液标本时,常采用第一管作细胞计数。 2 ?下列关于临床检验标本描述中,错误的是: A. 血常规检查的标本一般用EDTA-Na抗凝的标本。 B. 尿液常规检查一般可留取随机尿标本。 C. PT、APTT试验需采用枸橼酸盐抗凝。 D. 严重溶血的标本不能用于血X的测定。 3 ?在急性化脓性感染时,以下检验结果哪一项是错误的: A. WBC总数升高 B. 外周血中出现晚幼粒细胞 C. 中性粒细胞空泡变性 D. NAP(中性粒细胞碱性磷酸酶染色)活性降低 4 ?下列选项中,错误的是: A. 在急性化脓性感染中,外周血中常易出现晚幼粒细胞。 B. 在病毒性感染中,常可见淋巴细胞分类增多。 C. 嗜酸性粒细胞生理功能中突出的特点是参与超敏反应。 D. 缺铁性贫血经铁剂治疗后,在红细胞分布直方图上可出现“双峰”改变。5?关于非选择性蛋白尿,下述描述中错误的是: A. 非选择性蛋白尿常出现于较严重肾小球病变中。 B. 中分子量白蛋白与小分子量B 2 —微球蛋白同时增多。 C. 大分子量蛋白质如IgG、IgA甚至IgM也大量滤出。 D. 非选择性蛋白尿治疗反应常常十分有效,因此预示预后良好。 6 ?关于正常骨髓象的描述,下列中错误的是: A. 骨髓增生活跃 B. 粒红比值约为5—7: 1 C. 粒系中杆状核粒细胞高于分叶核粒细胞,在粒细胞系中所占的比例为最高 D. 可见到极少量网状细胞、内皮细胞、组织嗜碱细胞等非造血细胞 7.依赖维生素K的凝血因子(依K因子)包括有: A. F n、W、/、X B. F n、%、/、X

01医本实验诊断考题(A)_实验诊断学

临床医学本科班2001级1-20班实验诊断学考试试题(A) ________级______班_____组姓名___________分数____________ 一、名词解释(每个2分,共10分) 1.核右移 2.无精子症 3.A/G比值 4.蛋白尿 5.类白血病反应 二、汉译英(每小题0.5分,共5分) 1. hemoglobin 2. hematocrit 3. albumin 4. Coombs test 5. white blood cell differential count 6.proteinuria 7. APTT 8. leukemia 9. platelet count 10.vWF 三、填空(每空1分,共20分) 1.PT通常用于检查_____源性凝血功能,其报告方式有____种,其中临床用于_______药物监测时,最好报告_______以达到标准化。 2._______酶活性增高对急性肝炎有早期诊断价值;肝炎进展过程中,血清_________酶升高,表示已发生肝纤维化,此时血清蛋白质测定可表现为________倒置。 3.正常骨髓象增生程度为_________;巨幼细胞贫血时幼红细胞形态特征为_________。以形态学检查为主的急性白血病分型方法又称____分型。在此基础上结合免疫学、细胞遗传学进行的白血病分型又称______分型。 3.尿沉渣种类包括______、________和_________等。 4. 化脓性脑膜炎病人脑脊液特点为放置后_________样凝固,白细胞分类以__________为 主;而结核性脑膜炎之脑脊液放置后呈_________样混浊,白细胞分类以________为主。5.急性胰腺炎在临床症状出现早期宜测定________用于诊断,而在治疗阶段宜测定________进行病情观察。 四、判断是非(用√或×表示。每小题0.5分,共5分) 1.结核性脑膜炎病人脑脊液氯化物明显降低() 2.阴道分泌物清洁度分度越高,其生殖系统健康状况就越好() 3.血糖升高、尿糖阳性即可确诊为糖尿病() 4.血沉加快、抗核抗体阳性,抗dsDNA 阳性有利于确诊SLE() 5.前列腺炎病人的前列腺液在显微镜下可见卵磷脂小体减少() 6.心肌酶、心肌蛋白、CRP对急性心梗的早期诊断时限依次提前() 7.消化性溃疡病人粪便隐血试验呈间断阳性()

实验诊断学试试题库学校答案学习资料

实验诊断学试试题库 学校答案

实验诊断学试题库 选择题: 1.下列临床常用标本中,不正确的是:D A.血常规实验中,最常用的抗凝剂为EDTA·K2。 B.严重溶血的标本不能用于血K+的测定。 C.对于尿液一般常规检查,可用随机尿标本。 D.采集脑脊液标本时,常采用第一管作细胞计数。 2.下列关于临床检验标本描述中,错误的是:A A.血常规检查的标本一般用EDTA-Na2抗凝的标本。 B.尿液常规检查一般可留取随机尿标本。 C.PT、APTT试验需采用枸橼酸盐抗凝。 D.严重溶血的标本不能用于血K+的测定。 3.在急性化脓性感染时,以下检验结果哪一项是错误的:D A.WBC总数升高 B.外周血中出现晚幼粒细胞 C.中性粒细胞空泡变性 D.NAP(中性粒细胞碱性磷酸酶染色)活性降低 4.下列选项中,错误的是:C A.在急性化脓性感染中,外周血中常易出现晚幼粒细胞。 B.在病毒性感染中,常可见淋巴细胞分类增多。 C.嗜酸性粒细胞生理功能中突出的特点是参与超敏反应。 D.缺铁性贫血经铁剂治疗后,在红细胞分布直方图上可出现“双峰”改变。5.关于非选择性蛋白尿,下述描述中错误的是:D A.非选择性蛋白尿常出现于较严重肾小球病变中。 B.中分子量白蛋白与小分子量β2-微球蛋白同时增多。 C.大分子量蛋白质如IgG、IgA甚至IgM也大量滤出。 D.非选择性蛋白尿治疗反应常常十分有效,因此预示预后良好。 6.关于正常骨髓象的描述,下列中错误的是:C A.骨髓增生活跃 B.粒红比值约为5-7:1 C.粒系中杆状核粒细胞高于分叶核粒细胞,在粒细胞系中所占的比例为最高 D.可见到极少量网状细胞、内皮细胞、组织嗜碱细胞等非造血细胞 7.依赖维生素K的凝血因子(依K因子)包括有:B A.FⅡ、Ⅳ、Ⅸ、Ⅹ

实验诊断学考试试题1

一、单项选择题 1.成人女性血红蛋白正常参考值为多少g/L A.100 ?140 B.140 ?170 C.120 ?160 D.110~150 E.170~200 2.红细胞和血红蛋白均增高的心脏病是 A. 高血压性心脏病 B. 慢性肺源性心脏病 C. 冠心病 D. 贫血性心脏病 E. 风湿性心脏病 3.网织红细胞减少见于 A. 上消化道出血 B. 缺铁性贫血 C. 溶血性贫 血 D. 再生障碍性贫血 E. 白血病 4.下列正常值中错误的是 A. 网织红细胞0.005 ?0.015 B. 白细胞计数 (4.0~10.0)X109 C. 嗜酸性粒细胞0.5%~5% D. 嗜中性粒细胞 20%~40% E.血小板数(100?300) X 109 5.中度贫血是指血红蛋白量为: A. > 90g/L B. 90g/L ?60g/L C.60g/L ?30g/L D. v 60g / L E. v 30g/L 6. 下列哪项属小细胞低色素性贫血: A. 缺铁性贫血 B. 溶血性贫血 C. 急性失血性贫血 D. 巨幼细胞性贫血 E. 再生障碍性贫血 7. 中性粒细胞增多最常见的原因是: A. 急性溶血 B. 急性中毒 C. 急性感染 D. 大面积烧伤 E. 恶性肿瘤 8. 下列哪种疾病引起白细胞总数减少: A.尿毒症 B.急性中毒 C.化脓性感染 D.伤寒 E.急性 心肌梗死 9.有关白细胞计数,下列各项中不正确的是 A.>10X 109/L 为白细胞增多 B.v 4X 109/L 为白细胞减少 C. 化脓性感染,白细胞增多 D. 革兰氏阴性杆菌感染,白细胞可减少 E. 白细胞增多和淋巴细胞增多常一致10.急性失血时血象最早的变化是: A.血小板减少 B.血红蛋白减少 C.白细胞升高 D.白细胞减少 E. 血小板减少增高 11.嗜酸性粒细胞增多见于 A. 急性出血 B. 急性感染 C. 过敏性疾病 D. 肺结核 E. 伤寒12.淋巴细胞增多见于 A.化脓性感染 B.寄生虫病 C.病毒性感染 D.皮肤病 E.过敏性疾病 13.下列除哪种情况外,都可引起血小板减少 A. 再生障碍性贫血 B. 急性大失血 C. 放射病 D. 脾功能亢进 E. 弥散性血管内凝血 14.出血时间延长见于: A. 上消化道出血 B. 肺出血 C. 脑出血 D. 血小板减少 E.红细胞减少 15.凝血埋单缩短见于: A.血友病 B.严重肝病 C.无纤维蛋白血症 D.DIC E.纤维蛋白溶解活性亢进 16. 网织红细胞明显增多最常见于: A. 巨幼细胞性贫血 B. 未治疗的缺铁性贫血 C. 溶血性贫血 D. 淋巴瘤 E. 再生障碍性贫血 17. 通常作为判断贫血治疗效果和治疗性试验的指标是: A.RBC B.Hb C.Ret D.Hct E.ESR 18. MCH 是指: A.平均红细胞体积 B.平均红细胞血红蛋白量 C.红细 胞压积 D.红细胞体积分布宽度 E.平均红细胞血红蛋白浓度 19. 反映红细胞体积大小变异的指标为: A.MCV B.MPV C.RDW D.HCT E.ESR 20. 下列哪种成分增高可导致血沉增快: A.白细胞 B.白蛋白 C.球蛋白 D.网织红细胞 E.血小板 21. 某患者血液检查结果为:MCV76fl ,MCH24pg,MCHC290g儿应属于: A. 大细胞性贫血 B. 正常细胞性贫血 C. 小细胞低色素性贫血 D. 单纯小细胞性贫血 E. 正常人 22. 镜下血尿是指尿中红细胞数: A. > 2 个/HP B. > 3 个/HP C. > 4 个/HP D. > 5 个/HP E. > 7 个/HP 23. 正常尿液中偶见: A.透明管型 B.脂肪管型 C.颗粒管型 D.白细胞管 型 E. 腊样管型 24. 正常人尿比重为 A.1.010 B.1.015 ? 1.025 C.1.020 D.1.015 E.1.025 ?1.035 25. 少尿是指24 小时尿量小于 A.100ml B.400ml C.600ml D.800ml E.1000ml 26.下列哪项是肾性少尿的原因: A.肾动脉血栓形成 B.休克 C.急性肾炎 D.重度失 水 E. 前列腺肥大 27. 多尿是指24小时尿量多于: A.1000ml B.1500ml C.2000ml D.2500ml E.3000ml 28. 酱油色尿易见于 A.血友病 B.膀胱炎 C.肾盂肾炎 D.蚕豆病 E.缺铁性贫血 29. 病人尿中出现哪种管型,首先考虑急性肾盂肾炎 A.白细胞管型 B.蜡样管型 C.脂肪管型 D.上皮细胞 管型 E. 红细胞管型 30.. 振荡尿液后,尿液泡沫呈黄色见于 A.药物影响 B.食用胡萝卜影响 C.尿中有血红 蛋白

深圳市中小学“智慧校园”建设与应用标准

深圳市中小学“智慧校园”建设与应用标准 指引(试行) 深圳市教育局 2015年3月 页脚内容1

目录 一、编制背景 (3) 二、编制目的 (3) 三、适用范围 (3) 四、指标体系 (3) (一)指标构成及权重 (3) (二)指标分解描述 (6) 1.基础支撑环境(37分) (6) 2.数字教育资源(20分) (10) 3.应用能力水平(80分) (12) 4.可持续发展机制与保障(13分) (17) 五、说明 (18) 页脚内容2

一、编制背景 2012年,我市发布了《智慧深圳规划纲要(2011-2020年)》,在教育方面提出要实施智慧教育工程,打造“智慧校园”。同年12月,我市被教育部确定为首批全国教育信息化试点单位,任务是开展“采用云计算技术的公共服务体系建设与应用探索”。 我市要有效完成教育部教育信息化试点工作,要助力智慧深圳建设,要创建深圳教育云,真正实现以教育信息化引领教育现代化,都必须要有抓手。为此,我市在2013年初下发了《深圳市教育局关于开展教育部教育信息化试点工作的通知》(深教〔2013〕128号),决定组织开展首批“智慧校园”建设与应用试点。 2014年,“智慧校园”试点工作被列入市政府重点工作计划和近三年我市承接国家部委和省改革任务。同年6月,我市下发了《深圳市教育局关于公布首批“智慧校园”试点学校名单的通知》(深教〔2014〕252号),决定在全市122所学校开展首批“智慧校园”试点工作。 为推进我市“智慧校园”试点工作,促进并引领我市中小学“智慧校园”的建设与应用,根据国家《数字校园示范校建设参考指标》、《构建利用信息化手段扩大优质教育资源覆盖面有效机制的实施方案》、《教育行业信息系统安全等级保护定级工作指南(试行)》,和《广东省中小学信息化基本标准(试行)》、《深圳市义务教育规范化学校设备设施配置标准》等文件,结合我市实际,特制定《深圳市中小学“智慧校园”建设与应用标准指引(试行)》。 二、编制目的 (一)为我市中小学开展“智慧校园”建设与应用提供指引; (二)为3年打造100所“智慧校园”示范学校提供评估依据; (三)探索信息化环境下的教育教学新模式、新方法和未来学校新形态。 三、适用范围 本标准指引的适用范围是我市开展“智慧校园”建设与应用的中小学校。 四、指标体系 (一)指标构成及权重 本标准指引根据科学性、前瞻性、创新性原则,兼顾可操作性和突出应用的特点,分为基础支撑环境、数字教育资源、应用能力水平、可持续发展机制与保障4个一级指标,17个二级指标,总分值150分(详见表1)。 表1 指标构成及权重 页脚内容3

实验诊断学复习题必考题

实验诊断学 ★1.红细胞及血红蛋白增多的临床意义有哪些? 答:1.相对性增多见于严重呕吐,腹泻,大量出汗,大面积烧伤,慢性肾上线皮质功能减退,尿崩症,甲状腺功能抗进危象,糖尿病酮症酸中毒. 2,绝对性增多按发病元婴可分为继发性和原发性两类,后者称为真性红细胞增多症.继发性红细胞增多症:是血中红细胞生成素增多所致.包括红细胞生成素代偿性增加和红细胞生成素非偿性增加 真性红细胞增多症:是一种原因未明的红细胞增多症为主的骨髓增殖性疾病. 2.简述红细胞染色反应的异常表现及临床意义。 答: ①,低色素性:红细胞染色过浅,中央苍白区扩大,提示血红蛋白含量明显减少.常见于缺铁性贫血. ②.高色素性:红细胞着色深,中央淡染区消失,其平均血红蛋白含量增高.常见于巨幼细胞贫血. ③.嗜多色性:红细胞呈淡灰蓝或紫灰色,是一种刚脱核的红细胞,体积较正常红细胞稍大,正常人外周血中占.其增多反映骨髓造血功能活跃,红细胞系增生旺盛.见于慢性贫血. 3.简述红细胞中常见的异常结构及其临床意义。 答: ①.嗜碱性点彩:红细胞含有细小嗜碱性点状物质,是核糖体聚集而成. ②.染色质小体:是核的残余物,此小体多见于溶血性贫血. ③卡-波环:成熟红细胞出现一条很细的淡紫色线状体呈环形或”8”字形,曾认为是核 膜的残余物. ④有核红细胞:正常成人有核红细胞均存在于骨髓之中,外周血涂片中除在新生儿科见到有核红细胞外,成人如出现有何红细胞,均属病理现象. ★4.病理性中性粒细胞增多的常见原因是什么? 答:1.急性感染2.严重的组织损伤及大量红细胞破坏.3.急性大出血.4.急性中毒.5.白血病骨髓增值性疾病及恶性肿瘤. 5.中性粒细胞减少的常见原因有哪些? 答:1.感染2.血液系统疾病.3.物理,化学因素损伤.4.单核吞噬细胞系统功能亢进.5.自身免疫性疾病. 6.嗜酸性粒细胞增多的常见原因有哪些 答:1.过敏性疾病2.寄生虫病3.皮肤病4血液病5某些恶性肿瘤6 某些传染病 7.嗜碱性粒细胞增多的常见原因有哪些? 答:1,过敏性疾病2.血液病3.恶性肿瘤4.其他如糖尿病, 8.病理性淋巴细胞增多的常见原因有哪些? 答:感染性疾病,肿瘤性疾病,急性传染病的恢复期.移植排斥反应 ★9.血小板减少的常见原因有哪些? 答:血小板的生成障碍,血小板破坏或消耗增多,血小板分布异常. 10MPV的临床意义是什么? 答:代表单个血小板的平均容积.增加多见于血小板破坏增加而骨髓代偿功能良好者,造血功能抑制解除后,MPV增加时造血功能恢复的主要表现.减低多见于:骨髓造血功能不良,血小板生成减少.有半数白血病患者MPV减低,MPV随血小板数而持续下降,是骨髓造血功能衰竭的标志之一.

实验诊断学习题

病原体检查 一.名词解释 1、医院感染 2、ESBL 3、TORCH 二、填空 1、NCCLS推荐的药物敏感试验的首选方法是______________________。 2、输血前临床常做的传染病检测项目有___________、_________、___________、___________、______________。 3.ESBL常从____________和____________等细菌中检出。 4、检查新型隐球菌,常用的染色方法是__________;检查结核杆菌,常用的染色方法是_____。 5、肝炎病毒标志物主要包括各型肝炎病毒____________、__________和______________。 6、临床称为“大三阳”的乙肝标志物是指_________、________、_____________阳性。 7、机体感染HAV后,可产生_______、__________和____________三种抗体。 8、医院感染定期监测的对象有__________、_____________、___________和消毒灭菌效果。 9、为防止院内感染,医务人员推荐洗手的方法________________。 三、选择题 (一)单选题 1、做血液细菌培养时,为提高阳性率下列哪项是错误的() A.多时间段、多部位采集 B.寒战初期或发热高峰期后采集 C.应用抗生素前采集 D.同时做需氧培养和厌氧培养 E.采血量一般为培养液的10%左右 2、做细菌培养,关于标本采集下列哪项是错误的() A.尿液一般采集中段尿 B.婴幼儿可用直肠拭子取粪便 C.伤口分泌物从创面表面采集 D.痰液清晨漱口后采集 E.厌氧培养时,标本采集后置于厌氧培养运送管中 3、下列不具有多重耐药性的细菌是() A. MRSA B. PRP C. MSSA D VRE E ESBLS 4、乙肝三系统中,下列哪项标志物具有保护性() A.HBsAb B.HBeAb C.HBcAb D.HBeAg E. HBsAg 5、我国最常见的医院感染类型是() A.尿路感染 B.皮肤感染 C.胃肠道感染 D.下呼吸道感染 E..血液感染 四、简答题 1、微生物标本采集的原则有哪些? 2、微生物室在医院感染控制中的重要作用有哪些? 答案 一、名词解释

江苏省中小学智慧校园建设规范指南规范.doc

附件 江苏省中小学智慧校园建设指南 (征求意见稿) 为深入推进我省中小学智慧校园示范校建设,提升教育信息化水平,根据《教育信息化十年发展规划(2011-2020年)》、《江苏省“十三五”教育信息化发展专项规划》、《省政府办公厅关于推进智慧教育的实施意见》等精神,特制定《江苏省中小学智慧校园建设评价指标体系》。 一、建设目标 智慧校园是对数字校园的进一步扩展与提升,是在教育科学、学习科学和管理科学等理论指导下,综合运用信息技术全面感知校园物理环境,智能识别师生群体的学习、工作情景和个体的特征,将学校物理空间和数字空间有机衔接起来,为师生建立智能开放的教育教学环境,改变师生与学校资源、环境的交互方式,开展以人为本的个性化创新服务,通过信息技术与教育教学实践的深度融合,优化、重构教学、教研、管理和服务等过程,提高教育教学质量和管理水平,促进师生全面发展。 智慧校园建设要以促进学习方式和教育模式创新为核心,建设目标如下: 提升校园环境智能化水平。推进云计算、大数据、物联网、移动互联网、社交网络等新一代信息技术在智慧校园中

的创新应用,建设覆盖学校日常运行各个环节的高速有线、无线网络及各种智能信息终端,实现从基础设施、教育资源到教育活动的智能化。拓展现实校园的时空维度,实现各种应用系统互联互通,着力打造网络学习空间,改变师生交流方式,构建课堂教学、教师教研、学生学习、管理评价、家校沟通、学校安全管理等一体化、智能化的校园环境。 创新教学方式和管理模式。充分利用智能化教育环境,突出培养教师的教育技术能力、信息环境下教学创新的能力,学生的自主学习能力、协作学习能力、探究学习能力和信息技术素养,促进信息技术与教育教学核心业务的深度融合,实现教与学方式和教育模式的变革与创新。优化学生管理、教师管理、资产及办学条件管理、教研与培训等业务管理类信息系统,实施学校教育教学、科研、管理、评价和服务流程优化与再造,实现标准化、精细化、智能化的教育管理和科学决策,提升管理效率与决策水平。 打造典型示范意义的特色。结合各地实际条件和发展目标,在智慧教育环境提升、教育资源共享、应用融合及人才培养等方面形成创新性、研究性、示范性应用,建设具有江苏特色的智慧校园,引领我省中小学智慧校园建设和发展。 二、建设原则 坚持开放多元。智慧校园是智慧教育的基本单元,是智慧城市建设的重要内容,智慧校园建设要坚持因地制宜,多样化发展。不同区域不同学校要广泛学习吸收信息技术发展的最新成果,通过教育应用创新,形成新方法、新流程、新

江苏省中小学智慧校园建设指导意见

江苏省中小学智慧校园建设指导意见 (征求意见稿) 为大力推进教育信息化建设,充分发挥教育信息化对教育现代化建设的支撑和引领作用,全面提升智慧教育建设水平,根据教育部《教育信息化十年发展规划(2011-2020年)》、《教育信息化“十三五”规划》和《省政府办公厅关于推进智慧教育的实施意见》、《江苏省“十三五”教育发展规划》等文件精神,结合我省中小学教育信息化建设发展实际,决定在全省中小学推进智慧校园建设。为指导各地智慧校园建设工作,特制定《江苏省中小学智慧校园建设指导意见》。 一、建设目标 利用云计算、大数据、物联网、移动互联网、人工智能等信息技术,不断改善中小学信息技术基础设施,营造网络化、数字化、个性化、终身化的智慧教育环境,扩大优质资源覆盖面,推进信息技术与教育教学、管理的深度融合,提高教育教学质量,提升教育治理水平,促进教育公平和优质均衡发展,培养具有较高思维品质和较强实践能力的创新型人才。到2020年,全省60%的中小学建成智慧校园。 二、建设原则 坚持以人为本。智慧校园建设要以服务为导向,要为教师、学生、家长和社会公众提供优质的信息化环境和资源服务,提高学生信息素养、创新思维和实践创造能力,促进教 1

师专业发展、提高教学水平,提升育人质量。 坚持应用驱动。智慧校园建设要坚持以问题为导向、以应用为核心,从学校发展、师生发展、教育改革发展的实际需求出发,统筹规划、分步实施、有序推进。要通过深化应用释放信息技术对教育教学改革的促进作用,以应用带动环境营造、支撑核心业务,构建以学习者为中心的教育教学和管理方式。 坚持融合创新。智慧校园建设要进一步深化信息技术与教育教学和管理的融合创新,不断提升教育信息化的效能。要强化教育信息技术对教育教学改革的服务与支撑,聚焦教育改革发展过程中困扰教学、管理的核心问题和难点问题,以创新促发展,推动教育服务供给方式、教育理念、教育教学模式和学习方式的变革。 坚持示范引领。智慧校园建设要坚持统筹规划、以点带面、示范引领、分步实施。各地要根据实际情况,在智慧教育环境提升、数字资源共建共享、融合创新及人才培养等方面形成创新性、示范性应用案例,建设具有本地特点江苏特色的智慧校园。充分发挥示范辐射作用,推动全省中小学智慧校园建设水平的整体提升。 三、建设内容 智慧校园建设主要从智慧环境、数字资源、应用能力、融合创新、支撑保障、特色发展六个方面着手。 (一)智慧环境 1.校园网络。利用互联网、移动互联网、物联网等信息2

★实验诊断学试题库学校答案

实验诊断学试题库 选择题:1.下列临床常用标本中,不正确的是:D A. 血常规实验中,最常用的抗凝剂为EDTA K2O B. 严重溶血的标本不能用于血《的测定。 C. 对于尿液一般常规检查,可用随机尿标本。 D. 采集脑脊液标本时,常采用第一管作细胞计数。 2.下列关于临床检验标本描述中,错误的是:A A. 血常规检查的标本一般用EDTA-Na抗凝的标本。 B. 尿液常规检查一般可留取随机尿标本。 C. PT、APTT试验需采用枸橼酸盐抗凝。 D. 严重溶血的标本不能用于血X的测定。 3.在急性化脓性感染时,以下检验结果哪一项是错误的:D A. WBC总数升高 B. 外周血中出现晚幼粒细胞 C. 中性粒细胞空泡变性 D. NAP(中性粒细胞碱性磷酸酶染色)活性降低4.下列选项中,错误的是:C A. 在急性化脓性感染中,外周血中常易出现晚幼粒细胞。 B. 在病毒性感染中,常可见淋巴细胞分类增多。 C. 嗜酸性粒细胞生理功能中突出的特点是参与超敏反应。 D. 缺铁性贫血经铁剂治疗后,在红细胞分布直方图上可出现“双峰”改变。5.关于非选择性蛋白尿,下述描述中错误的是:D A. 非选择性蛋白尿常出现于较严重肾小球病变中。 B. 中分子量白蛋白与小分子量B 2 —微球蛋白同时增多。 C. 大分子量蛋白质如IgG、IgA甚至IgM也大量滤出。 D. 非选择性蛋白尿治疗反应常常十分有效,因此预示预后良好。 6.关于正常骨髓象的描述,下列中错误的是:C A. 骨髓增生活跃 B. 粒红比值约为5—7:1 C. 粒系中杆状核粒细胞高于分叶核粒细胞,在粒细胞系中所占的比例为最高 D. 可见到极少量网状细胞、内皮细胞、组织嗜碱细胞等非造血细胞 7.依赖维生素K的凝血因子(依K因子)包括有:B A. F n、W、/、X

实验诊断学考核方案32:10

《实验诊断学》考核方案 一、课程描述 《实验诊断学》是医学各专业学生的考查课,是基础医学与临床医学的桥梁课。实验诊断主要是运用物理学、化学和生物学等的实验技术和方法,通过感官、试剂反应、仪器分析和动物实验等手段,对病人的血液、体液、分泌物、排泄物以及组织细胞等标本进行检验,以获得反映机体功能状态、病理变化或病因等的客观资料。它更是运用基本理论、基本知识和基本技能对疾病进行诊断的一门学科,是临床各门课程的基础和入门,因而也是打开临床医学的一把钥匙,医学生对本门课程的掌握程度直接影响到以后临床课的学习。因此,我教研室为了学生更好的完成本门课程的学习,取得优异的考核成绩,特制定了科学、全面、易于操作的考核办法。 课程名称:《实验诊断学》 课程性质:必修考查课 教学时数:理论课32学时,实验课10 学时。 开课单位:第一临床医学院检验教研室 授课对象:12级本科麻醉学专业1-8班、口腔医学专业1班。 二、考核的目的与要求 考试是为了检测学生运用知识的能力、实践动手操作能力、教学参与程度等,分为终结性考试和形成性考试。终结性考试是对学期末学生学完本学科的结业考试,形成性考核是对学生实际动手操作能力的检验与考核。 三、考核内容、方式、题型、时间 (一)考核内容:分为平时的形成性考核内容和课程结束时的理论考核内容。

1、形成性考核内容:包括实验课出勤考核、实验报告、实验考核、技术操作。 2、理论考核内容即课程结束时的考试内容:包括概论、临床血液学检测、排泄物、分泌物、体液检验、常用肾脏功能实验室检测、临床常用生物化学检测、临床常用免疫学检查、其它检测等方面内容。 (二)考核方式:《实验诊断学》的形成性考核采用实验课出勤抽查及实际操作的形式完成;课程结束时的理论考试采用闭卷的考试形式。 (三)考核题型: 1、形成性考核题型:实验课出勤占5分,实验报告占5分,实验考核占5分、技术操作占5分。 2、终结性考核题型:课程结束考试采用理论考试、百分制的形式,题型为选择题占50分(A1型题占30分,A2型题占5分, A3-A4型题占5分,B型题占10分),概念题占10分(2分×5),填空题占5分(1分×5),简答题占24分(4分×6),论述题或病例分析题占11分(5.5分×2)。 (四)考核时间:《实验诊断学》的实践考核时间为100分钟,课程结束考试时间为120分钟。 四、成绩构成 《实验诊断学》的考核成绩由两部分组成。 1、形成性考核成绩:20分 形成性考核成绩占成绩考核的20%,即实验课成绩占20分,由实验室负责考核。 2、终结性考核(理论考试)成绩:80分 课程结业理论考试成绩占考核成绩的80%,由教研科负责考核。 医学检验教研室 2014年8月15日

最新中小学智慧校园建设指南

中小学智慧校园建设指南 为深入推进我区中小学智慧校园建设工作,提升全区教育信息化水平,根据国家教育信息化“十三五”规划、国家教育信息化2.0行动计划、教育部《2018年教育信息化和网络安全工作要点》、智慧校园总体框架国家标准和衡水市教育局相关文件精神等要求,结合我区中小学教育信息化建设发展实际,制定《冀州区中小学智慧校园建设指南》。 一、建设目标 智慧校园,是数字校园的进一步发展和提升,是物理空间和信息空间有机衔接,使任何人、任何时间、任何地点都能便捷地获取资源和服务。智慧校园应包括智慧教学环境、智慧教学资源、智慧校园管理、智慧校园服务、信息安全体系等基本要求,是教育信息化的更高级形态。 面对信息发展的新时代,我区中小学智慧校园建设要以“三通两平台”为抓手,以促进学习方式和教育模式创新为核心,利用云计算、大数据、物联网、移动互联网、人工智能等信息技术,不断改善中小学信息技术基础设施,营造网络化、数字化、个性化、终身化的智慧教育环境,扩大优质资源覆盖面,推进信息技术与教育教学、管理的深度融合,提高教育教学质量,提升教育治理水平,促进教育公平和优质均衡发展。 二、建设原则 坚持以人为本。智慧校园建设要以服务为导向,要为教师、学生、家长和社会公众提供优质的信息化环境和资源服

务,提高学生信息素养、创新思维和实践能力,促进教师专业发展、提高教育质量,提升育人水平。 坚持应用驱动。智慧校园建设要坚持以问题为导向、以应用为核心,从学校发展、师生发展、教育改革发展的实际需求出发,统筹规划、分步实施、有序推进。要通过深化应用释放信息技术对教育教学、管理和服务的促进作用,以应用驱动各项建设工作。 坚持融合创新。智慧校园建设要进一步深化信息技术与教育教学和管理的融合创新,不断提升教育信息化的效能。要强化信息技术对教育教学改革的服务与支撑,聚焦教育改革发展过程中困扰教学、管理的核心问题和难点问题,以创新促发展,推动教育理念、教育服务供给方式、教育教学模式和学习方式的变革。 坚持示范引领。智慧校园建设要坚持统筹规划、以点带面、示范引领、分步实施。各学校要根据实际情况,在智慧教育环境提升、数字资源共建共享、融合创新及人才培养等方面形成创新性、示范性应用案例,建设具有冀州特色的智慧校园。充分发挥示范辐射作用,推动全区中小学智慧校园建设水平的整体提升。 三、建设内容 智慧校园围绕智慧环境、数字资源、信息素养、融合创新、特色发展五个方面开展建设。 (一)智慧环境 1.校园网络。利用互联网、移动互联网、物联网等信息技术升级改造校园网络环境,进一步提升宽带网络校校通水

实验诊断学考试名解简答论述汇总_给力版

第一部分血液的一般检验 名词解释 1.核右移:周围血中若中性粒细胞核出现5 叶或更多分叶,其百分率超过3%者,称为核右移,主要见于巨幼细胞贫血及造血功能衰退,也可见于应用抗代谢化学药物治疗后。2.核左移:周围血中出现不分叶核粒细胞(包括出现晚、中、早幼粒细胞及杆状核粒细胞等)的百分率增高(超过5%)时。常见于感染,特别是急性化脓性感染、急性失血、急性中毒及急性溶血反应等。 3.棒状小体:白细胞细胞质中出现呈红色的杆状物质,长约1-6um,1 条或数条不等,称为棒状小体,其对急性白血病类型的鉴别有一定的参考价值。如急性非淋巴细胞白血病部分亚型呈阳性,而急淋则不出现棒状小体。 4.网积红细胞:是晚幼红细胞到成熟红细胞之间尚完全成熟的红细胞,胞质中尚残存核糖体等嗜碱性物质。表明骨髓造血功能的指标。 5.红细胞沉降率:红细胞在一定的条件下沉降的速率,它受多种因素的影响:血浆中各种蛋白的比例改变;红细胞数量和形状等 6.红细胞体积分布宽度:是反映外周血红细胞体积异质性的参数,由血细胞分析仪测量而获得。对贫血的诊断有重要的意义。 7.中毒颗粒:中性粒细胞胞质中出现较粗大、大小不等、分布不均匀的深蓝紫色或蓝黑色的颗粒称为中毒颗粒,多见于较严重的化脓性感和大面积烧伤等情况。 8.贫血:单位容积循环血液中红细胞数,血红蛋白量及血细胞比容低于参考值低限,称为贫血。9.小红细胞:红细胞直径小于6μm,中央淡染区扩大,红细胞呈小细胞低色素。见于低色素性贫血,如缺铁性贫血。 10.血细胞比容:又称血细胞压积(PCV),是指血细胞在血液中所占容积的比值。 问答题 1.网织红细胞检测的临床意义是什么? 答:网织红细胞计数(Ret)是反映骨髓造血功能的重要指标。 (1)判断骨髓增生能力,判断贫血类型:①网织红细胞增多,表示骨髓造血 功能旺盛。常见于溶血性贫血(尤其急性溶血)、急性失血;造血恢复期可见Ret 短暂和迅速增高,是骨髓功能恢复较敏感的指标;②网织红细胞减少,表示骨 髓造血功能低下,见于再生障碍性贫血、溶血性贫血、自身免疫性溶血性贫血危 象。(2)评价疗效,判断病情变化:Ret 是贫血患者随访检查的项目之一。(3)骨髓移植后监测骨髓造血恢复。 2.红细胞沉降率(血沉)病理性增快的临床意义: 答:病理性增快可见于:①各种炎症:感染是血沉加快最常见的原因,如急性 细菌性感染;结核病、结缔组织炎症、风湿热等慢性炎症于活动期血沉增快,病 情好转时血沉减慢,故血沉(ESR)可动态观察病情变化。②组织损伤及坏死: 见于较大范围组织损伤或手术创伤。心肌梗死时血沉增快,而心绞痛时血沉多正 常,可作为两者鉴别指标。③恶性肿瘤血沉增快,而良性肿瘤血沉多正常。④高 球蛋白血症。⑤贫血。⑥高胆固醇血症。血沉是较为常用而缺乏特异性的指标, 血沉常作为疾病是否活动的监测指标。 3.试述中性粒细胞病理变化的临床意义。 答:1)急性感染,特别是化脓性球菌感染如败血症,大叶性肺炎等;2)严重的组织损伤,如手术创伤,大面积烧伤,急性心肌梗死等;3)急性溶血;4)急性大出血,特别是内出血如脾破裂,肝破裂等;5)急性中毒,如代谢性中毒或化学性药物中毒;6)恶性肿瘤和白血病。 4.何谓中性粒细胞核象变化?其临床意义是什么?

实验诊断学综合测试卷

实验诊断学综合测试卷一及答案 发布人:圣才学习网 发布日期:2008-2-28 浏览次数:1588 [大] [中] [小] 一、名词解释 1.红细胞比积:抗凝血在一定条件下离心沉淀,由此而测出红细胞在全血中所占体积的百分比,称为红细胞比积。 2.红细胞沉降率:指红细胞在一定条件下沉降的速度,以mm/h表示。 3.红细胞渗渡脆性试验:将红细胞悬浮于不同浓度的低渗氯化钠溶液里借以观察,判断红细胞脆性强弱的试验。主要用于诊断先天性球形红细胞增多症。 4.红细胞直径曲线:用目镜测微计,分别测出染色薄血片上100个或200个红细胞直径后,把各红细胞的直径数据绘成红细胞大小分布的曲线,称为红细胞直径曲线曲线。 5.碱性点彩红细胞:在瑞氏染色条件下,红细胞胞浆中存在大小不等,多少不一的嗜碱性黑蓝色颗粒,其胞浆每具有嗜多色性色调称为碱性点彩红细胞。 6.卡博环:位于嗜多色性碱性点彩红细胞胞浆中的一种紫红色细线圈状结构,呈圆形或8字形,见于铅中毒,巨幼细胞性贫血、溶血性贫血和恶?血。 二、填空题 1.血小板具有粘附于胶原纤维及带负电荷物质表面的特性,称为() 此种功能对初期止血有重要意义。 【答案】血小板粘附功能 2.血小板与血小板之间的粘附称为() 【答案】聚集 3.血小板在各种诱聚剂作用下,将其颗粒内含物放出的反应,称为()或分泌反应。 【答案】释放反应

4.检查血小板分泌功能最常用的化验指标是()和()测定。 【答案】β-血小板球蛋白,血小板因子 5.血小板具有使血块收缩的功能,主要由()来完成。 【答案】血栓收缩蛋白 6.凝血过程主要分为(),()和()形成三个阶段。 【答案】凝血酶原激活物,凝血酶,纤维蛋白 7.凝血第一阶段因起动方式及激活X因子的途径不同分为()和()。 【答案】内源性途径,外源性途径 8.内源性凝血途径起动于(),这一过程有四个凝血因子参加,即()(),()和()后二者在血浆中以复合物形式存在。 【答案】接触活化,Ⅻ,Ⅺ,激肽释放酶原,高分子量激肽原 9.外源性凝血途径起动于组织损伤后所释放的()。 【答案】组织因子 10.()由于参与的凝血因子多,反应步骤复杂,故需3—8 min。()由于参与的因子少,步骤简单,故反应迅速,所需时间不到10s。 【答案】内原性凝系血途径,外原性凝系血途径 11.当凝血第一阶段的各凝血因子特别是(),(),()含量严重减低(各种血友病时),每导致凝血时间延长。 【答案】Ⅷ,Ⅸ,Ⅺ因子 12.内源性和外源性两条凝血途径一旦各自激活()后,就沿着一条()而进入其后的阶段。 【答案】X因子,共同作用 13.()是血浆中最重要的一种生理性抗凝物质,占血浆中总抗凝血酶活性的50%以上。 【答案】抗凝血酶-Ⅲ 14.血液凝固后,血块再被溶解的现象称为()。这一过程是由存在血浆中的()转变为()后面完成的。

实验诊断学习题20临床常用免疫学检查

临床常用免疫学检查 第一节血清免疫球蛋白检测 一、填空题 1、血清M蛋白阳性见于、、 、 和。 2、免疫球蛋白存在于机体的、、和 3、血清中最少的一种免疫球蛋白为,相对分子质量最大的为 含量最多的为 二、是非题 1、血清中含量最少的免疫球蛋为IgE。() 2、肾病综合征的患者血清可以出现IgM降低。() 三、名词解释 免疫球蛋白 四、选择题 A型题 1、IgG降低见于:() A.病毒感染 B.肺结核 C.链球菌感染 D.慢性肝炎 E.淋巴瘤 B型题 问题3~5 A、IgG降低 B、IgE增高 C、IgD 降低 D、IgG升高. E、IgE 降低 2、各种过敏性疾病() 3、无丙种球蛋白血症() 4、应用免疫抑制剂患者() C型题 问题5~6 A、M蛋白阳性 B、IgG增高 C、二者都有 D、二者都无 5、多发性骨髓瘤() 6、各种慢性感染() X型题 7、免疫球蛋白降低常见于:() A、体液免疫缺陷病 B、慢性肝病 C、寄生虫病 D、长期应用免疫抑制剂者 E、多发性骨髓瘤 五、问答题 免疫球蛋白G增高常见于哪些情况。 【参考答案及题解】

一、填空题: 1、多发性骨髓瘤、巨球蛋白血症、重链病、轻链病和半分子病 2、血液、体液、外分泌液和某些细胞的细胞膜上 3、免疫球蛋白E、免疫球蛋白M、免疫球蛋白G 二、是非题:1、√;2、√ 三、名词解释: 免疫球蛋白:通常是指由浆细胞产生的具有抗体活性和(或)抗体样结构的球蛋白。 四、选择题:1D 2B 3C 4A 5C 6B 7AD 五、问答题: 答:①多克隆性增高,常见于各种慢性感染、慢性肝病、淋巴瘤、肺结核、链球菌感染以及自身免疫性疾病如SLE、RA等;②单克隆性增高,主要见于免疫增殖性疾病,如分泌性多发性骨髓瘤。 【王彦平】 第二节血清补体的检测 一、填空题 1、总补体溶血活性主要反映,它的降低很有意义,见于、 、、、。 2、补体C3的增高主要见于、、和。 二、是非题 补体C3、C4的水平可以反映系统性红斑狼疮的活动程度。() 三、名词解释 补体 四、选择题 A型题 1、血清总补体活性增高见于:() A、感染性心内膜炎 B、病毒性肝炎 C、组织损伤 D、皮肌炎 E、狼疮性肾炎 B型题 问题2~5 A、血清总补体活性(CH50) B、补体C3增高 C、补体C4降低 D、AP-H50 E、C3SP增高 2、主要反映补体传统途径活化的活性程度() 3、反映体内补体被活化() 4、反映补体旁路途径活化的情况() 5、反映排异反应() C型题 问题6-7 A血清C3降低 B血清C4降低 C两者都有 D二者都无 6、急性肾小球肾炎() 7、恶性肿瘤()

广东省中小学智慧校园建设指南

附件 广东省中小学智慧校园 建 设 指 南 2017年11月

广东省中小学智慧校园建设指南 为切实有效地推进“智慧教育示范工程”,引导我省智慧校园科学发展,研制形成《广东省中小学智慧校园建设指南(试行)》(以下简称“指南”)。本指南适用于广东省中小学组织开展智慧校园建设和应用。 一、内涵与特征 智慧校园是对数字校园的进一步扩展与提升,是综合运用云计算、物联网、移动互联、大数据、社交网络、人工智能等新兴信息技术,构建智能感知环境和新型的教育教学空间,智能识别师生群体的学习、工作情景和个体的特征,充分释放先进技术的优势和人类的智慧,为师生提供以人为本、智能开放的个性化创新服务,促进教学、教研、教育管理和生活服务的流程再造与系统重构,实现信息技术与教育教学的深度融合,提高教育教学质量和教育管理决策水平,形成“可感知、可诊断、可分析、可自愈”的新型校园生态。与初期的学校信息化和数字校园相比,智慧校园强调以服务于创新型人才培养为导向,以智能泛在环境为支撑,以融合创新为核心,形成开放协同的现代化校园生态。其特征如下图所示: 1 / 24

图1 校园信息化建设发展阶段 二、建设目标 提升校园环境智能化水平。应用云计算、大数据、物联网、移动互联网、社交网络、人工智能等新一代信息技术,建成能够感知环境、识别情境、记录行为、联接社群的教育教学环境,实现物理环境与虚拟环境的融合,提高从基础设施、教育资源服务、师生交互到教育教学活动的智能化水平。 实现信息技术与教育教学的融合创新。信息技术得到普遍而深入的应用,信息技术与教育教学核心业务深度融合,实现教与学方式和教育模式的变革与创新,实现标准化、精细化、智能化的教育管理和科学决策,学校的教育教学模式、管理决策模式、生活服务方式都在智慧型应用的支撑下发生了重大变革与创新,学校整体上实现智慧运行,智慧教育的功效得到充分显现。 形成协同开放的现代化校园生态。现实校园和教育教学的时空维度得到拓展,教育扩展到家庭、社群和自然社会环境,注重学生的全面和谐发展和终身持续发展,正规教育和非正规教育、校内教育和校外教育融通,注重教育的自主性、个体性和适配性,教师和社会共同为学生提供适合学生的教育资源,形成现代学校 2 / 24

实验诊断学习题

实验诊断学概论 一、填空题: 1、实验诊断得内容包括__________,_________,__________,_________,__________。 2、临床常用得抗凝剂有__________,_________,__________,_________,__________。 3、血气分析时常在_________采血,也可用_________或_________。 二、判断题: 1、空腹采血就是指在禁食8小时后空腹采取得标本,一般在晨起早餐前采血,常用于临床生化检查。 2、进行血小板功能检查时,注射器与容器需先经硅化处理,以防止血小板接触玻璃器皿被激活、 三、名词解释: 实验诊断学 四、选择题: A型题: 1、有关血液标本得采集,下列叙述错误得就是: A、毛细血管采血成人在指端 B、静脉采血婴幼儿常在颈外静脉 C、血气分析时多在股动脉穿刺采血D、急诊采血不受时间限制 E、必要时可以从静脉输液管中采取血液标本。 X型题: 2.下列抗凝剂中哪些就是与钙离子结合而起到抗凝作用得? A、草酸钠 B、草酸钾 C、枸缘酸钠 D、肝素 E、乙胺四乙酸二钠 3、影响检验结果得常见因素有: A、一般得技术误差 B、病人得性别、年龄等生理因素 C、标本得采集与处理 D、药物得影响 E、进食、吸烟、饮酒等生活因素 五.问答题: 实验诊断得应用范围包括哪些? 【参考答案及题解】 一.填空题: 1、临床血液学检验,排泄物、分泌物及体液得检验,临床生化检验,临床免疫学检验,临床病原体检验 2、草酸钠,草酸钾,枸缘酸钠,肝素,乙二胺四乙酸二钠 3、股动脉穿刺,肱动脉、桡动脉 二、判断题: 1、√2、√ 三。名词解释: 实验诊断主要就是运用物理学、化学与生物学等得实验技术与方法,通过感官、试剂反应、仪器分析与动物实验等手段,对病人得血液、体液、分泌物排泄物以及组织细胞等标本进行检验,以获得反映机体功能状态、病理变化或病因等得客观资料、 四。选择题: 1、E2、A、B、C、E3、A、B、C、D、E、 五、问答题: 1、直接为临床医疗工作服务 2、为开展预防工作提供依据 3、进行社会普查 4、开展健康咨询 5、为开展计划生育,优生优育提供实验基础 血液一般检查 一、名词解释: 1、贫血2、中性粒细胞核左移 3、Auer小体 4、类白血病反应5、网织红细胞反应 二、选择题 A型题 6、红细胞得主要功能就是:( ) A提供营养 B 维持体温 C运输激素 D 运输O2与CO2 E提供铁

相关文档
相关文档 最新文档