常用DELPHI控件属性事件设置说明(第二篇)

(2012-03-13 08:48:48)
转载
标签: 

delphi控件属性

it

分类: delphi

常用DELPHI控件属性设置说明
目录
TForm Class 
TPanel组件 
TToolBar Class 
TToolButton Class 
TTimer Class 
TADOConnection Class 
TADOQuery Class 
TADODataSet Class 
TDBGrid Class 
TADOStoredProc Class 
TButton Class 
TBitBtn Class 
TComboBox Class 
TStaticText Class 
TLabel Class 
TEdit Class 
TGroupBox Class 
TRadioGroup Class 
TListbox Class 
TTreeView Class 
TDataModule Class 
VC++使用串口 
I. Open 16
II. Configuration 
III. Read 
IV. Write 
V. Close 
Conclusion 
License 
TForm Class
TForm代表一个标准的应用程序窗口。
在设计阶段,当你在窗体设计器内创建窗体时,他们作为窗体类的子节点被执行。窗体能代表应用程序的主窗口,或者对话框,或MDI的children。一个窗体能包含其它对象,如TButton, TCheckBox和TComboBox对象等。

ArrangeIcons:安排最小化MDI子窗体的图标;
Cascade:排列MDI子窗体,使他们重叠;
Next:激活在窗体队列中的下一个子窗体;
Previous:激活在窗体队列中的前一个MDI子窗体;
Title:排列MDI子窗体,使他们都是一样的大小。

Action:指定与控件有关的活动;
ActiveControl:指定以窗体为焦点的控件;
Align:控件如何停靠在容器(父控件)中;
AlphaBlend:指定窗体是否透明;
AlphaBlendValue:指定一个透明窗体的半透明度;
Anchors:指定控件如何固定到其父控件上;
AutoScroll:如果窗口不足以显示它内部的所有控件时,滚动条是否自动显示在滚动窗口控件中;
AutoSize:指定控件是否自动调节其大小去容纳自身内容;
BiDiMode:指定控件的双向风格;
BorderIcons:指定显示在窗体标题栏的图标;
BorderStyle:指定窗体边框的外表和行为;
BorderWidth:指定控件边框的宽度;
Caption:指定用户辨别控件的文本字符串;
ClientHeight:指定窗体客户区域的高度(像素);
ClientWidth:指定窗体客户区域的宽度(像素);
Clore:指定控件的背景色;
Constraints:指定控件的尺寸约束。
Ctl3D:指定控件是拥有3D还是2D外观。
DefaultMonitor:指定窗体显示所用的显示器;
DockSite:控件是否可以是拖拽操作的目标;
DoubleBuffered:决定控件影像是被直接呈现到窗口还是首先被描绘做内存位图;(描绘道内存可防止窗口闪烁,但耗费内存。)
DragKind:指定控件是被正常拖拽还是停靠;
Dragmode:决定控件怎样启动拖放或拖靠;
Enabled:控件是否响应鼠标、键盘和定时器事件;
Font:控制控件上显示的文本的属性;
FormStyle:决定窗体风格;
GlassFrame:这是一个窗体架构,窗体类的一个成员;
Height:指定控件的垂直尺寸(像素);
HelpFile:指定窗体的帮助文件名;
HorzScrollBar:滚动窗体控件的水平滚动条;
Icon:当窗体最小化时显示的图标;
KeyPreview:指定窗体是否在活动控件之前接收键盘事件;
Menu:指定窗体德尔主菜单;
ObjectmenuItem:代表一个对OLE对象的选择响应的OLE菜单项;
OldCreateOrder:指定OnCreate事件和OnDestroy事件发生的时间;
Padding:指定控件的衬垫;
ParentBiDiMode:指定控件是否使用父控件的BiDiMode属性;
ParentFont:决定在哪里找到控件的字体信息;
PixelsPerInch:描述在设计窗体的系统中字体的比例;
PopupMenu:确定与控件有关的弹出菜单;
PopupMode:控制最高层窗体如何表现得如同window的WS_POPUP的风格;
PopupParent:为窗体栈设置一个用户不能改变的顺序;
Position:描绘窗体的尺寸和位置;
PrintScale:描绘打印窗体的比例;
Scaled:指定窗体是否依PixelPerInch属性的值确定大小;
ScreenSnap:指定窗体是否对齐到屏幕的边缘;
ShowHint:决定当鼠标在控件上短暂停留时,控件是否显示帮助提示;
SnapBuffer:指定屏幕对齐的间隔;
TransparentColor:指定窗体的颜色是否透明显示;
TransparentColorValue:当TransparentColor为true时,指示窗体颜色的半透明值;
UseDockManager:指示在拖靠操作中是否使用停靠管理器;
VertScrollBar:描绘滚动窗体控件的垂直滚动条;
Visible:指示窗体是否可见;
Width:指示控件或窗体的水平尺寸(像素);
WindowMenu:为MDI父窗体指定window菜单;
WindowState:指定窗体在屏幕上的显示方式;

OnActivate:当窗体变成活动窗体时发生;
OnAlignInsertBefore:当一个拥有自定义对齐的对象被对齐时发生;
OnAlignPosition:当一个拥有自定义对齐的对象被对齐时发生;
OnCanResize:当试图调整控件尺寸时发生;
OnClick:当用户鼠标点击控件时发生;
OnClose:当窗体关闭时发生;
OnCloseQuery:当试图关闭窗体时发生;
OnConstrainedResize:使调整大小约束合适;
OnContexPopup:当用户右键点击控件或其它引起弹出菜单(如:使用键盘)时发生;
OnCreate:当窗体被创建时发生;
OnDblClick:当用户在控件上双击鼠标按钮时发生;
OnDeactivate:当窗体失去焦点是发生;
OnDestroy:当窗体被销毁时发生;
OnDockDrop:当另一个控件停驻到本控件时发生;
OnDockOver:当另一控件被拖出本控件时发生;
OnDragDrop:当用户拖下一个被拖动的对象时发生;
OnDragOver:当用户把一个对象拖上控件时发生;
OnEndDock:当用户拖动一个对象结束,要么停靠对象要么取消拖动;
OnGetSiteInfo:返回控件的停靠信息;
OnHelp:当窗体接收到一个帮助请求时发生;
OnHide:当窗体被隐藏(即Visible属性被设置成false)时发生;
OnKeyDown:当控件拥有焦点,用户按下任意键时发生;
OnKeyPress:当一个键盘键被按时发生;
OnKeyUp:当用户释放一个被按下的键盘键时发生;
OnMouseActivate:当控件的父窗体非活动,鼠标指针在控件上,用户按下鼠标按钮时发生;
OnMouseDown当鼠标指针在控件上用户按下鼠标按钮时发生;
OnMouseEnter:当用户把鼠标移动到控件上时发生;
OnMouseLeave:当用户把鼠标移出控件时发生;
OnMouseMove:当鼠标指针在控件上用户移动鼠标指针时发生;
OnMouseUp:当用户释放一个按在组件上的鼠标按钮时发生;
OnMouseWheel:当鼠标滚轮滚动时发生;
OnMouseWheelDown:当鼠标滚轮向下滚动时发生;
OnMouseWheelUp:当鼠标滚轮向上滚动时发生;
OnPaint:当窗体被重新绘制时发生;
OnResize:当控件被调整大小后立即发生;
OnShortCut:当用户按下一个键盘键时发生(在OnKeyDown事件前);
OnShow:当窗体被显示时发生(还需要窗体的Visible被设置为true);
OnStartDock:当用户开始拖拽一个DragKind属性是dkDock的控件时发生;
OnUnDock:当应用程序试图去移除一个被拖入有窗口的控件中的控件时发生;

TLoginDialog Class
TLoginDialog是一个在应用程序里提供安全登录的对话框。
function LoginDialog(const ADatabaseName: string; var AUserName: string; var APassword: string): Boolean;
通常,一个TLoginDialog对象是和LoginDialogEx或RemoteLoginDialog函数一起被创建,并用于提供对一个当地数据库表的安全访问。然而TLoginDialog也能被用做其它登录对话框的基对象。
调用 LoginDialogEx提出标准登录窗口提示用户输入有效的用户名和密码。ADatabaseName指定被访问的数据库。NameReadOnly指定用户是否可以改变从对话框中获得的用户名。
function LoginDialogEx(const ADatabaseName: string; var AUserName: string; var APassword: string; NameReadOnly: Boolean): Boolean;
此对话框返回用户名和密码作为AUserName和APassword的值。
如果用户取消对话框,那么LoginDialogEx返回false。如果LoginDialogEx返回true,那么应用程序就能提示用提供的用户名和密码连接数据库服务器。
提示:当在C++中创建跨平台的应用程序,添加QDBLogDlg.pas unit(而不是DBLogDlg)到工程中,如果你想要默认的数据库登录对话框在运行时显示。如果你的C++应用程序中包含一个DBGrid组件,QDBLogDlg就不需要被包含进去了。
用TPasswordDialog允许用户为基于BDE的应用程序指定登录密码(登录通过TSession对象表现出来)。密码被用于应用程序打开一个请求输入密码的Paradox数据表。
TPasswordDialog对象通常使用PasswordDialog函数创建。然而TPasswordDialog也能被用作另一类密码对话窗口的基对象。
function PasswordDialog(const ASession: IDBSession): Boolean;
显示一个对话窗口,提示用户输入局部受密码保护的表对应的密码。
TPanel组件
使用TPanel把一个面板(panel)放到窗体上。面板拥有提供控件边框倾斜度的属性和方法帮助管理子控件嵌入面板中。
你也可以用面板把控件聚集在一起,就好像使用一个group box,但是拥有倾斜边框而不是group box轮廓。在单窗体中,panel专门用于控件组。如果你打算在其它的窗体内使用相同的分组,你可能想去使用frame代替。在写使用drag-and-dock的应用程序时,没有边框的panel是有用的去做停靠站。
尽管你能使用panel实现状态条和工具条,请不要忘记你也可以使用TToolBar、TStatusBar类完成相同功能。
arr:array[0..3]of TPanel;
Align:决定控件在容器(父控件)中的对齐方式;
Alignment:panel中标题(Caption)的对齐方式;
Anchors:指定控件怎样被固定到它的父窗体上;
AutoSize:指定控件是否自动调整自身大小以容纳它的内容;
BevelEdges:指定控件的哪条边框是倾斜的;
BevelInner:决定panel内边框风格;
BevelKind:指定控件的倾斜风格;
BevelOuter:决定panel外边框的倾斜风格;
BevelWidth:决定panel内外边框的倾斜宽度(像素);
BiDiMode:指定控件的双向模式;
BorderStyle:决定panel控件边框线的风格;
BorderWidth:指定内外边框的距离(像素);
Caption:用户识别控件所用的文本字符串;
Color:指定控件的背景色;
Constraints:指定控件的尺寸约束条件;
Ctl3D:决定控件拥有三维还是二维视图;
DockSite:指定控件能否执行拖拽操作;
DoubleBuffered:决定控件的影像是被直接描绘到窗口还是首先被绘制成内存位图;
DragCursor:当控件被拖动时,被用于代表鼠标指针的图片;
DragKind:指定控件是被正常拖动还是停靠;
DragMode:决定控件怎样启动拖入拖出操作;
Enabled:控制控件是否响应鼠标、键盘和定时器事件;
Font:控制写入控件的文本的属性;
FullRepaint:决定当panel尺寸改变时怎样重绘自身;
Locked:决定被用于工具条的panel是否被OLE服务器提供的工具条替换。
Padding:指定控件的衬垫;
ParentBackground:决定控件是否使用父主题的背景;
ParentBiDiMode:同上;
ParentColor:同上;
ParentCtl3D:同上;
ParentDooubleBuffered:同上;
ParentFont:同上;
ParentShowHint:同上;
PopupMenu:识别与控件有关的弹出菜单;
ShowCaption:TPanel类的成员;
ShowHint:当鼠标短暂停留在控件上时是否显示控件的帮助提示;
TabOrder:在parent’s Tab order中,指示控件在位置;
TabStop:决定用户是否能Tab to控件;
UseDockManmager:指定在拖拽操作中是否使用停靠管理器;
VerticalAlignment:设置标题的垂直位置;
Visible:决定组件是否显示在屏幕上;

OnAlignInsertBefore:当一个具有客户点校整的对象被调整时发生;
OnAlignPosition:当一个具有客户点校整的对象被定位时发生;
OnCanResize:当试图调整控件大小时发生;
OnClick:当用户点击控件时发生;
OnConstrainedResize:调整大小限制;
OnContextPopup:当用户右击控件或者引发弹出菜单(如使用键盘)时发生;
OnDblClick:当鼠标指针在控件上,用户双击鼠标左键时发生;
OnDockDrop:当另一个控件停靠在本控件上时发生;

TToolBar Class
TToolBar管理工具按钮和其它控件,把它们排成行并且让它们自动适应它们的大小和位置。
TToolBar=class(TToolWindow);
TToolBar是工具按钮(TToolButton)的容器。它提供一个简单的办法去排列和管理虚拟控件。
在一个工具条内的所有工具按钮都保持统一的宽度和高度。
其它控件能放置到工具条上。这些固定在不可见工具按钮上的控件保持一个统一的高度。
在工具条上,当控件放不下时,这些控件就会自动环绕并且开辟新行以容纳控件。
Flat属性允许透过工具条显示背景并且把突出边框给工具按钮。
一般来讲,工具按钮响应应用程序菜单项,并提供用户对应用程序命令更直接的访问。
Public Properties:
ButtonCount:给出工具条中按钮的数量;
Buttons:在工具条中列出工具按钮;
Canvas:指定工具条的皮肤;
CustomizeKeyName:在用户使用工具条自定义对话框改变它之前,指定registry key(工具条将其现有按钮配置保存的位置);
CustomizeValueName:指定registry value;
RowCount:指示工具条的行数;
Published Properties:
Align:决定控件怎样和它所在的容器对齐;
AllowTextButtons:决定仅有文本组成的工具按钮是否能被工具条替代;
Anchors:指定控件怎样固定到其父控件中;
AutoSize:指示工具条的高度是否自动改变以容乃它包含的控件;
BorderWidth:指定工具条的边框宽度;
ButtonHeight:指定工具条中控件的高度;
ButtonWidth:指定在工具条中的工具按钮的宽度;
Caption:指定一个用户识别控件的文本字符串;
Color:指定控件的背景色;
Constraints:指定控件的尺寸约束;
Ctl3D:决定控件是否拥有3D视图;
Customizable:指定在运行时用户是否能定制用户界面工具条;
DisabledImages:列出可以显示不可用工具按钮的图片;
DockSite:指定控件是否能作为拖动和停靠操作的目标;
DoubleBuffered:Determines whether the control's image is rendered directly to the window or painted to an in-memory bitmap first.
DragCursor:当控件被拖动时鼠标指针的形状;
DranKind:指定控件是被正常拖动还是停靠;
DragMode:Determines how the control initiates drag-and-drop or drag-and-dock operations.
DrawingStyle:存储风格类型;
EdgeBorders:决定工具条的那一边有边界;
EdgeInner:决定工具条内部边缘的边框风格;
EdgeOuter:决定工具条外部边缘的边框风格;
Enabled:控制控件是否响应鼠标、键盘和定时器事件;
Flat:使工具条半透明并且消除工具按钮边框;
Font:控制控件上书写的文本的属性;
GradientDirection:指定倾斜方向是水平还是垂直;
GradientDrawingOptions:存储已选定的绘画选项;
GradientEndColor:斜坡的结束色;
GradientStartColor:斜坡的开始色;
Height:指定控件的垂直尺寸;
HideClippedButtons:指定通过邻近工具条掩盖按钮操作;
HotImages:列出当鼠标指向工具按钮时在工具按钮上显示的图片;
HotTrackColor:在倾斜风格中最新的跟踪色;
Images:列出工具按钮上显示的图片;
Indent:指定工具条左边的页边空白;
List:在工具按钮的右边显示主题,左边显示图片;
Menu:工具条关联的菜单项;
ParentColor:决定控件在哪里寻找它的颜色信息;
PopupMenu:认出和空间有关的弹出菜单;
ShowCaption:决定是否在工具按钮上显示文本主题;
ShowHint:决定当鼠标指针短暂停留在控件上时,控件是否显示帮助提示;
TabOrder:指示在父背的tab顺序里控件的位置;
TabStop:决定用户是否可以使用tab键使控件获得焦点;
Transparent:指定工具条是否透明;
Visible:决定组建是否显示在屏幕上;
Wrapable:自动调整工具条上的组件包;

OnAdvandedCustomDraw:发生在绘制工具条背景期间的离散阶段;
OnAdvancedCustomDrawButton:发生在绘制工具条按钮期间的离散阶段;
OnClick:当用户点击控件时发生;
OnContextPopup:当用户右键点击控件或其它引发弹出菜单(如使用键盘)时发生;
OnCustomDraw:当工具条必须被绘制时发生;
OnCustomDrawButton:当在工具条上的一个按钮必须被绘制时发生;
OnCustomizeAdded:当用户向工具条添加一个按钮时发生;
OnCustomizeCanDelete:当用户试图删除工具条上的一个按钮时发生;
OnCustomizeCanInsert:当用户试图向工具条添加一个按钮时发生;
OnCustomized:当用户结束更改工具条时发生;
OnCustomizeDelete:当用户从工具条上删除一个按钮时发生;
OncustomizeNewButton:当用户试图向工具条添加一个新按钮时发生;
OnCustomizeReset:当用户取消工具条的用户化时发生;
OnCustomizing:当用户显示工具条定制对话框为了改变工具条时发生;
OnDbClick:当鼠标指针在控件上,用户双击鼠标左键时发生;
OnDockDrop、OnDockOver、OnDragDrop、OnDragOver、OnEndDock、OnEndDrag
OnEnter:当一个控件接收到输入焦点时发生;
OnExit:当输入焦点从一个控件移到另一个控件时发生;
OnGetSiteInfo:返回控件的停靠信息;
OnMouseActivate:当鼠标指针在控件上,控件的父窗体非活动而用户按下一个鼠标按钮时发生;
OnMouseDown:当鼠标指针在控件上,而用户又按下一个鼠标按钮时发生;
OnMouseEnter:当用户把鼠标指针移到一个控件上时发生;
OnMouseLeave:当用户把鼠标指针移出控件时发生;
OnMouseMove:当鼠标指针在控件上,用户移动鼠标指针时发生;
OnMouseUp:当用户释放按在组件上的鼠标指针时发生;
OnResize:控件尺寸改变后立即发生;
OnStartDock:DragKind属性为dkDock,当用户开始拖动一个控件时发生;
OnStartDrag:当用户开始拖动一个控件或包含有鼠标保持按下状态在控件上的对象时发生;
OnUnDock:当应用程序试图移出一个已停靠在窗口控件上的控件时发生;

TToolButton Class
TToolButton是工具条对象上的一个按钮控件。
TToolButton = class(TGraphicControl);
使用TToolButtoon实施工具条上的按钮。在工具条上,其它控件(包括TButton和TSpeedButton)能被替代掉时,TToolButton使用特殊的工具条特征简化按钮布局,提供诸如弹出边框和透明度等的选项;
在设计阶段在工具条上放置工具按钮,选择工具条->右键->New Button。
Public Properties
Index:指定工具按钮的索引;
Published Properties
Action:指派与控件有关的行为;
AllowAllUp:指定是否在同一组中的所有工具按钮可以同时不被选中;
AutoSize:指定是否工具按钮自动调整大小以容纳它的文本和图片;
Caption:指定按钮主题;
Down:指定是否按钮被选择(down)还是未被选择(up);
DragCursor:当控件被拖动时,指示代表鼠标指针的图片;
DragKind:Specifies whether the control is being dragged normally or for docking.
DragMode:Determines how the control initiates drag-and-drop or drag-and-dock operations.
DropdownMenu:识别一个与工具按钮有关的弹出菜单;
Enabled:控制控件是否响应鼠标、键盘和定时器事件;
Grouped:聚集一些相邻的工具条按钮;
Height:指定控件的垂直尺寸(像素);
ImageIndex:决定哪张图片显示在工具按钮上;
Indeterminate:指定工具按钮既不被选择也不未被选择;
Marked:指定按钮是否被标记;
MenuItem:指定响应按钮的菜单项;
ParentShowHint:决定当控件的帮助提示应该显示时,控件到那找到这个提示;
PopupMenu:指定与控件有关的弹出菜单;
ShowHint:决定当鼠标短暂停留在控件上时,控件是否显示帮助提示;
Style:决定工具按钮的风格;
Visible:决定组建是否显示在屏幕上;
Width:指定窗体控件的水平尺寸(像素);
Wrap:Forces a new row after the tool button.

TTimer Class
TTimer被用于简化调用Windows API定时器函数SetTimer和KillTimer,简化处理WM_TIMER消息。在应用程序中一个TTimer组件对应一个定时器。
定时器通过它的OnTimer事件执行。TTimer有一个Interval属性,它决定了OnTimer事件发生的频率。Interval和Windows API的SetTimer函数的参数相对应。
注意:全系统所能拥有的定时器的数量限制和系统有关。

TADOConnection Class
TADOConnection压缩了ADO连接对象。使用TADOConnection连接到ADO数据存储。通过一个单独TADOConnection组件提供的连接能被多个ADO命令和数据集组件通过它们的连接属性共享。
TADOConnection = class(TCustomConnection, IUnknown, ConnectionEventsVT);
TADOConnection允许你控制连接到数据存储的属性和状况。使用TADOConnection的属性去控制这些诸如记录锁计划(乐观锁或非乐观锁)、光标类型、光标定位、隔离级别和连接超时等属性。方法提供了实施业务和获得关于组件连接到的数据库的元数据。
Public Properties
CommandCount:指示和连接有关的命令组件的数量;
Commands:列出连接组件的所有活动命令;
ConnectionObject:提供直接访问ADO连接对象;
DataSets:为一个连接组件提供活动的数据集的索引数组;
Errors:Errors是错误集的一个补充;
InTransaction::指示业务是否正在进展中;
Properties:TADOConnection类的一个成员;
State:指示ADO连接现在的状态;
Version:指示使用的ADO的版本;
Published Properties
Attributes:指定自动操作的交易行为;
CommandTimeout:指定试图执行一个命令所需要的时间;
Connected:指定连接是否活动的;
ConnectionString:指定对数据存储的连接信息;
ConnectionTimeOut:指定尝试连接所需要的时间;
ConnectOptions:指定连接是同步还是异步;
CursorLocation:指定连接的光标时客户端的还是服务器端的;
DefaultDatabase:指定ADO连接使用的默认数据库;
IsolationLevel:指定交易的隔离级别;
KeepConnection:指定在没有数据集处于打开状态时,应用程序是否仍然保持对数据库的连接;
LoginPrompt:指定在打开一个连接之前登录对话框是否立即显示;
Mode:指示允许使用的连接;
Provider:指定ADO连接的提供者;
Published Events
AfterConnect:创建一个连接后发生;
AfterDisconnect:关闭一个连接后发生;
BeforeConnect:创建一个连接前立即发生;
BeforeDisconnect:连接关闭前立即发生;
OnBeginTransComplete:开始一个交易后发生;
OnCommitTransComplete:提交一个交易后发生;
OnConnectComplete:开始一个连接后发生;
OnDisconnect:终止一个连接后发生;
OnExecuteComplete:执行完一个命令后发生;
OnInfoMessage:当从数据存储连接接收到信息消息时发生;
OnLogin:当打开通向服务器的通讯通道时发生;
OnRollbackTransComplete:回滚交易后发生;
OnWillConnect:请求开始连接后发生;
OnWillExecute:数据库服务器发送命令执行信号后发生;

Public Methods
BeginTrans:在相关的数据库上开始一个新的交易;
Cancel:终止对数据存储的连接企图;
CommitTrans:提交一个打开的交易;
Execute:对Execute方法重载的概述;
GetFieldNames:同上;
GetProcedureNames:同上;
GetTableNames同上;
Open:开始一个对数据库的连接;
OpenScheme:从连接提供者检索纲要信息;
RollbackTrans:回滚一个活动的交易;

TADOQuery Class
TADOQuery = class(TCustomADODataSet);
使用TADOQuery访问一个或更多在使用SQL语句数据存储中的表。
通过使用SQL语句,从数据存储的表中接收数据。在数据存储中,使用像INSERT、DELETE、UPDATE、ALTER TABLE和CREATE TABLE这样的语句在数据表和其它元数据对象上执行操作。执行存储过程。
Public Properties
RowsAffected:返回最后一次执行查询影响的行数;
Published Properties
CommandTimeout:指定试图执行一个命令所需要的时间;
DataSource:指定数据源组件,从而提取和在查询SQL语句中使用的参数相同的域值;
EnableBCD:指定采用浮点法还是BCD法对待数据;
ParamCheck:指定如果在运行时SQL语句改变了,数据集组件的参数列表是否也跟着改变;
Parameters:SQL语句的参数集;
Prepared:指定命令是否在执行前已准备好;
SQL:包含ADO查询所要执行的SQL文本;
Public Methods
ExecSQL:执行ADO查询组件的SQL语句;

TADODataSet Class
TADODataSet代表从数据存储接收到的一个数据集;
TADODataSet = class(TCustomADODataSet);
TADODataSet是最一般的ADO数据集组件。TADODataSet接收从ADO数据存储中的一个或多个表中返回的结果集。接收的内容既可以直接来自某个表也可以通过SQL语句来自一个或多个表。在用TADODataSet接收一个数据集前,应将它连接至数据存储。通过TADODataSet的ConnectionString属性或使用在Connection属性中已指定的TADOConnection组件。
使用TADODataSet组件的CommandText属性接收数据集,指定一个表名或一个SELECT语句。TADODataSet不适合数据操作语言(像DELETE INSERT UPDATE等没有返回集)的SQL语句。对于这些SQL语句应使用像TADOCommmand或TADOQuery等组件。
AfterCancel:应用程序完成对活动记录的更改后发生;
AfterClose:应用程序关闭一个数据集后发生;
AfterDelete:应用程序删除一条记录后发生;
AfterEdit:应用程序开始编辑一条记录后发生;
AfterInsert:应用程序插入一条新记录后发生;
AfterOpen:应用程序打开数据集以后但没发生数据访问以前发生;
AfterPost:应用程序把活动记录写入数据库或改变日志和返回浏览状态后发生;
AfterScroll:应用程序从一条记录滚动到另一条记录后发生;
BeforeCancel:应用程序执行取消对活动记录的改变的请求前发生;
BeforeClose:数据集关闭前立即发生;
BeforeDelete:应用程序试图删除活动记录前发生;
BeforeEdit:应用程序进入对活动记录的编辑模式前发生;
BeforeInsert:应用程序进入插入模式前发生;
BeforeOpen:应用程序执行一个打开数据集的请求前发生;
BeforePost:应用程序放弃对数据库或改变日志的活动记录的改变前发生;
BeforeScroll:应用程序从一条记录滚动到另一条记录前发生;
OnCalsFields:当应用程序重新计算已计算的数据域时发生;
OnDeleteError:当应用程序试图删除一条记录并且引起了一个例外时发生;
OnEditError:当应用程序试图修改或插入一条记录并且引起了一个例外时发生;
OnNewRecord:当应用程序插入或追加一条新数据集记录时发生;
OnPostError:当应用程序试图去修改或插入一条记录并且引起了一个例外时发生;

TDBGrid Class
TDBGrid显示和操作来自一个表格内的数据集内的记录。
TDBGrid = class(TCustomDBGrid);
把一个TDBGrid对象放到窗体上去显示和编辑来自数据库的表中或查询的记录。应用程序能使用这个表格去insert、delete或编辑在数据库中的数据,或者简单的显示数据。
在运行时,用户能使用数据库的TDBNavigator去移动表格中的数据,并且去插入、删除和编辑这些数据。在数据表格中做的编辑并不被提交给潜在的数据集直到用户移动到另一条记录或关闭应用程序。
TDBGrid拥有从TCustomDBGrid继承来的一般行为。TDBGrid发布了一些从TCustomDBGrid继承的属性但是并没介绍任何新的行为。
Public Properties
Canvas:指定为控件绘制皮肤的TCanvas对象;
SelectedRows:为在数据集中的所有记录指定一个书签集,类似于表格中的选择集。
Published Properties
Align:决定控件在它的父控件中如何对齐;
Anchors:指定控件如何固定到其父控件中;
BiDiMode:指定控件的双向模式;
BorderStyle:决定在表格四周是否绘制单线边框;
Color:指定控件的背景色;
Columns:描述显示属性和与列绑定的字段;
Constraints:指定控件的尺寸约束;
Ctl3D:决定控件有三维或二维视图;
DataSource:获得到数据集的连接,以便数据感知控件找到数据源;
DefaultDrawing:指示数据感知表格是否自动绘制;
Enabled:控制是否响应鼠标、键盘和定时器事件;
FixedColor:指定表格中固定行和列的背景色;
Font:控制控件上的文本的属性;
ImeMode:决定输入方法编辑者行为;
ImeName:向用户指定输入者把键盘输入转变为亚洲语言字符;
Options:指定数据感知控件的多种显示和行为属性;
PopupMenu:指定和空间有关的弹出菜单;
ReadOnly:指定使用的表格是否只供显示,或者是否能使用表格编辑数据;
ShowHint:决定当鼠标指针短暂停留在控件上时,控件是否显示帮助提示;
TabOrder:指示控件在其父控件的Tab顺序中的位置;
TabStop:决定用户是否能使用Tab使控件获得焦点;
TitleFont:描述画表格列标题的字体;
Visible:决定组件是否显示在屏幕上;

Published Events
OnCellClick:当用户释放表格单元格中的鼠标时发生;
OnColEnter:当焦点移动到表格中的一个新的单元格中时发生;
OnColExit:当单元格失去焦点前立即发生;
OnColumnMoved:当用户用鼠标移动一列时发生;
OnDblClick:当鼠标指针在控件上,用户双击鼠标左键时发生;
OnDragDrop:当用户放弃对对象的拖动时发生;
OnDrapOver:当用户把一个对象拖动到一个控件上时发生;
OnDrawColumnCell:当表格需要绘制一个单元格时发生;
OnDrawDataCell:如果Columns的State属性是csDefault,表格需要绘制一个单元格时发生;
OnEditButtonClick:当用户按下一个表格列中的省略按钮时发生;
OnEnter:当控件接收到输入焦点时发生;
OnExit:当输入焦点从一个控件移动到另一个控件时发生;
OnKeyDown:当控件拥有焦点,一个用户按下任意键盘键时发生;
OnKeyPress:当一个键被按下时发生;
OnKeyUp:当用户释放一个已被按下的键时发生;
OnMouseActivate:当父窗体处于非活动哦能够状态,鼠标指针在控件上,用户按下鼠标按钮时发生;
OnMouseDown:当鼠标指针在控件上,用户按下一个鼠标键时发生;
OnMouseEnter:当用户把鼠标移入一个控件时发生;
OnMouseLeave:当用户把鼠标移出一个控件时发生;
OnMouseMove:当用户在控件上移动鼠标指针时发生;
OnMouseUp:当用户释放已按在组件上的鼠标指针时发生;
OnTitleClick:当用户释放在某列头的鼠标时发生。

TADOStoredProc Class
Published Properties
CommandTimeout:指定试图执行命令所用的时间;
DataSource:代表给数据集提供值的数据源;
EnableBCD:指定数值字段值是使用浮点数表示还是BCD码表示;
Parameters:包含一个SQL语句的参数的集合;
Prepared:指定命令在执行前是否准备好;
ProcedureName:指示被TADOStoredProc使用的存储过程;
Public Methods
ExecProc:执行在服务器上的存储过程;
TButton Class
TButton = class(TCustomButton);
使用TButton把一个标准的按钮放到窗体上。在一个对话框设置窗体中,TButton引进几个属性去控制它的行为。用户选择按钮控件看是行动。
使用TBitBtn显示一个代替标签的位图。使用TSpeedButton显示进度。
提示:因为TButton主题总是在中心的,改变BiDi的对齐方式对其没有影响。
CommandLinkHint:在按钮主题下面作为对连接命令的文本提示;
Default:决定当Enter键被按下时,是否执行按钮的OnClick事件;
DisabledImageIndex:无效按钮状态的图片索引号;
ElevationRequired:把防火墙图标放在按钮上,指示改善访问权限;
HotImageIndex:热键状态的图片索引;
ImageAlignment:在按钮上图片的对齐方式;
ImageIndex:通常按钮状态的图片索引;
ImageMargins:在按钮上的图片的边缘;
Images:按钮的图片列表;
ModalResult:决定按钮是否关闭以及怎样关闭它(modal)的父窗体;
PressImageIndex:按钮处于按下状态时的图片索引;
SelectedImageIndex:按钮被选中时的图片索引;
WordWrap:指定指定是否按钮文本自动调整大小以适应控件的宽度;

TBitBtn Class
TBitBtn = class(TCustomButton);
位图按钮和按钮控件展示相同的行为。使用它们从窗体和对话框中开始行为。
位图按钮实施在按钮上指定位图图片和他们的显示和放置的属性。你可以从预定义位图按钮格式中或使用你自己定制的位图。虽然按钮只能和一个位图结合,位图(glyph属性)可以被细分为四个尺寸相等的部分。这些都基于按钮的up、down、disable和clicked状态显示。
TBitBtn的Kind属性提供经常使用的按钮,如OK、Cancel、Help等。这些预定义的按钮类型有相应的生动的图片和默认的行为,所以你能轻易的将他们添加到你的应用程序中甚至无需任何代码。
其它按钮种类相应用户点击的推荐方法是从事件列表中选择一个事件作为Action属性的值。通过设置Action属性,你使按钮作为了事件委托人,并且当用户点击按钮时,事件操作改变按钮的属性和响应。
当用户点击按钮时,如果你不使用对指定种类按钮或事件内置的响应,那么你能通过写OnClick事件指定响应。
Glyph:指定显示在位图按钮上的位图;
Layout:指定位图按钮的种类;
Margin:指定图片边缘与按钮边缘之间的像素大小;
ModalResult:决定按钮是否和怎样关闭它的父窗体;
NumGlyphs:指示在Glyph属性中被生动的指定的图片的数量;
Spacing:决定在位图和进度条上哪里显示图片和文本;
TComboBox Class
TComboBox把一个编辑框和一个滚动列表整合。
TComboBox = class(TCustomComboBox);
在TComboBox中,按钮的宽度和Windows使用的滚动条的宽度相等。这个宽度依赖于用户选择的配色方案(通过桌面右键,选择属性,选择外观)。在Windows XP上,用户可以通过点击高级按钮和选择滚动条项明确的改变滚动条的宽度。如果你调整了组合框的大小以至于所有的文本可见,那么当用户选用不同德配色方案时可以发现文本变模糊了。一个解决方法是当开发应用程序时设置滚动条宽度。大多颜色配置使用一个大概21像素的宽度的滚动条。
AutoCloseUp:指定当用户选择一个项目时,下拉列表是否自动关闭;
AutoComplete:当你键入字符时,自动匹配列表项;
AutoCompleteDelay:指定在一个键按下和试图自动匹配字段之间的延迟;
AutoDropDown:指定下拉列表是否自动打开以相应用户键;
BevelEdges:指定指定控件的那条边有斜面;
CharCase:决定组合框中文本的大小写;
Item:提供的在组合框列表位置要访问的列表项;
MaxLength:指定用户可以键入组合框编辑位置的最大字符数量;
Sorted:决定组合框列表位置是否按字母顺序排列;
Text:包含一个与控件有关的文本字符串。

OnChange:当用户改变现实在编辑区域的文本时发生;
OnClick:当用户点击控件时发生;
OnCloseUp:当当下拉列表由于用户的某些行为而关闭时发生;
OnContextPopup:当用户右击控件或引发弹出菜单(如:使用键盘)时发生;
OnDblClick:当鼠标指针在控件上用户双击鼠标左键时发生;
OnDrawItem:当一个在用户自定义组合框中的项目需要显示时发生;
OnMeasureItem:当在一个csOwnerDrawVariable组合框中的项目需要显示时发生;
OnSelect:当用户在下拉列表中选择一个字符串时发生;

TStaticText Class
TStaticText是一个窗口化的控件,在一个窗体上显示文本。
TStaticText = class(TCustomStaticText);
TStaticText组件函数像TLabel,除了TStaticText起源于TWinControl,因此有一个窗口句柄。当组件的加速键必须属于一个窗口化的控件(如在一个ActiveX属性上)时使用TStaticText代替TLabel。

TLabel Class
TLabel = class(TCustomLabel);
使用TLabel添加用户不能在窗体上编辑的文本。这个文本能被用于标记另一个控件,并且当用户键入快捷键时,对那个控件设置焦点。
因为TLabel不是从TWinControl继承,它没有自己的窗口,并且不能接收键盘的输入。向窗体添加一个能响应键盘输入并且可以显示文本的对象是TStaticText。
向窗体添加一个可以显示文本的对象并且用户可以滚动或编辑,就使用TEdit。

EllipsisPosition:指定省略(并不适合于已分配的矩形)怎样被放置在文本中;
FocusControl:指派一个与label相关的窗口化控件;
GlowSize:
ShowAccelChar:决定‘&’在标签文本中如何显示。

TEdit Class
TEdit = class(TCustomEdit);
使用TEdit对象把一个标准的Windows编辑控件放置到窗体上。编辑控件被用于接收用户键入的文本。编辑控件也可以向用户显示文本。
当仅向用户显示文本时,选择一个编辑控件允许用户选择文本和把文本复制到剪贴板上。如果不需要编辑控件的选择功能,就选择用标签对象。
TEdit引入了TCustomEdit的一般行为。TEdit发布了一些继承自TCustomEdit的属性,但是并没有引入任何新的行为。对于特殊的编辑控件,使用从TCustomEdit或其子类继承的其它类。
AutoSelect:决定当控件获得焦点时,是否编辑控件中的所有文本都自动被选中;
CharCase:决定在编辑控件中的文本的大小写;
HideSelection:决定当焦点转移到另一个控件时文本被选择的指示是否保留;
MaxLength:指定用户可以键入编辑控件的字符的最大数量;
NumbersOnly:仅允许数字被键入文本编辑控件中。
OnChange:当编辑控件的文本可能已经改变时发生;
OnContextPopup:当用户右击控件或执行其它引发弹出菜单的操作。

TGroupBox Class
TGroupBox = class(TCustomGroupBox);
TGroupBox组件代表一个标准的窗口编组框,用于把控件上相关的控件分组。当另一个控制组件被放置到一个分组框,这分组框就变成此控件的父组件。

TRadioGroup Class
TRadioGroup = class(TCustomRadioGroup);
一个TRadioGroup对象时一个特殊的编组框,它仅包含单选按钮。被直接放置在同一控制组件上的单选按钮属于一组。当用户选择一个单选按钮时,所有其它在同一族中的单选按钮变得未被选中。因此,在同一窗体中的两个单选按钮只有在它们被放置在单独的容器(如:分组框)中时才能被同时选中。
要向TRadiaGroup添加单选按钮,就在object Inspector中编辑Items属性。在Items中的每个字符串作为单选按钮的主题,在分组框中代表一个单选按钮。ItemIndex属性的值决定哪一个单选按钮目前处于被选中状态。
通过设置Columns属性,单选按钮可以单列或多列显示。
Note:设置单选组的BiDiMode为bdRightToLeft自动翻转单选按钮,FlipChildren方法将失去作用。
Columns:指定在单选组中列的数量;
ItemIndex:指示在分组框中的那个单选按钮目前处于选中状态;
Items:列出在单选组中的单选按钮;

TListbox Class
TListBox = class(TCustomListBox);
使用TListBox显示一个用户可以选择、添加或删除的项的列表。TListBox时Windows列表框控件的封装。对于特殊的列表框,使用其它继承自TCustomListBox或其子类的类。
TListBox实施继承自TCustomListBox的行为。TListBox发布了一些继承自TCustomListBox的属性,但是并没有引入任何新的行为。
AutoComplete:决定用户是否能通过在列表中键入字符使列表中的项获得焦点;
AutocompleteDelay:指定一个键按下和自动完成字段获得焦点之间的间隔;
ExtendedSelect:使用Shift和CTRL键使列表项实现多选;
IntegralHeight:决定列表框是否显示部分项。
ItemHeight:指定在一个自己绘制的列表框中列表项的高度(像素);
Items:包含显示在列表框中的字符串;
MultiSelect:指定用户是否能选择多于一个的列表项;
ScrollWidth:指定列表框水平滚动的宽度(像素);
Sorted:指定在列表框中的项是否按字母顺序排列;
TabWidth:指定在列表框中Tabs的尺寸。

OnData:当一个虚拟列表框需要提供一个项的文字时发生;
OnDataFind:当一个虚拟列表框需要认出已经给定文字的项的索引时发生;
OnDataObject:当一个虚拟列表框需要提供和某一项有关的对象时发生。

TTreeView Class
TTreeView代表一个显示项的阶层列表的窗口,就像文档的头、索引的入口或者在硬盘上的文件和路径。
TTreeView = class(TCustomTreeView);
使用TTreeView向窗体添加一个扩展的和简化的缩略图。在树形视图控件中的每个节点都有一个标签和可选的位图图片组成。每个节点拥有一系列有关的子节点。通过在一个节点上点击,用户能展开或缩回有关子节点列表。
AutoExpand:指定树视图的节点是否依选择自动展开或收缩;
ChangeDelay:指定一个当一个节点被选择时到当OnChange事件发生时之间的间隔;
HideSelection决定当焦点转移到另一个控件时,一个被选择的节点是否仍然显示被选择;
HotTrack:指定当鼠标通过列表项时,列表项是否高亮显示;
Images:决定哪个图片和树形视图有关;
Indent:指定列表的子节点被展开时的缩进量(像素);
Items:列出显示在树形视图控件内的单独节点;
Property Items:TTreeNodes;
TTreeNodes = class(TPersistent);
在树形控件中单独的节点时TTreeNode对象。这些单独的节点可以通过使用Items树形和item的索引来访问。例如:访问树形可噢噢你关键的第二个项:
MyTreeNode:=TreeView1.Items[1];
MultiSelect:决定用户是否可以一次性选择多于一个的树形节点;
MultiSelectStyle:决定多个被选的节点如何工作;
ReadOnly:决定用户是否可以编辑节点标签;
RightClickSelect:决定决定Selected属性是否返回鼠标右键选择的节点;
RowSelect:指定被选择项是否整行都高亮显示;
ShowButtons:指定是否在每个父节点项的左边显示‘+’或‘-’按钮;
ShowLines:指定是否显示连接子节点和相应父节点的连线;
ShowRoot:决定线连得高阶层节点是否显示;
SortType:决定在树形视图中的节点是否和怎样自动排序;
StateImages:决定哪一个图片被用做状态图片;
ToolTips:指定树形视图中的项是否有工具提示。

通过使用treeview1.Selected.Text来判断哪个节点被选中了。

OnAddition:当新节点被添加时发生;
OnAdvancedCustomDraw:在树形视图控件绘制期间的个别阶段发生;
OnAdvancedCustomDrawItem:在绘制树形控件节点期间的个别阶段发生;
OnChange:无论何时选择已经从一个节点变为另一个节点时发生;
OnChanging:当选择即将从一个节点变为另一个节点时发生;
OnCollapsed:一个节点已被倒塌后发生;
Oncollapsing:一个节点即将倒塌时发生;
OnCompare:当树形视图节点的排序过程中,两个节点必须比较时发生;
OncreateNodeClass:当树形视图的一个节点即将被创建时发生;
OnCustomDraw:绘制树形视图控件以前立即发生;
OnCustomDrawItem:绘制树形视图节点前立即发生;
OnDeletion:当树形视图中一个节点被删除时发生;
OnEdited:当用户编辑一个节点的文本属性后发生;
OnEditing:当用户开始编辑节点的文本属性时发生;
OnExpanding当一个节点即将被展开时发生;
OnGetImageIndex:当树形视图找到一个节点的图片索引时发生;
OnGetSelectedIndex:当树形视图找到被选择的节点的索引时发生;

TDataModule Class
TDataModule = class(TComponent);
在应用程序中,使用TDataModule对象提供非可视组件的集中处理位置。尤其是如TSQLDataSet、TSQLConnection等数据访问组件。数据模板并未被限制于数据访问组件,它们也能包含其它非可视组件,如TTimer、TOpenDialog、TImageList等。
在设计阶段,TDataModule对象提供一个可视的容器,开发者可以放置非可视组件,设置它们的属性,为他们编写事件处理程序。在设计阶段创建一个数据模板,选择File|New Data Module。
在数据模板的单元文件中,开发者也可以放置任何应用程序使用的业务规则。
为了使数据模板在应用程序的其它单元中可用,选择那个单元,选择File|Use Unit添加数据模板到uses语句里。
OnCreate:当应用程序举例说明一个数据模板时发生;
Ondestroy:当数据模板即将被销毁时发生;

VC++使用串口
The purpose of this article is to demonstrate the use of Win32 functions for serial port communication in Visual C++. A C++ class CSyncSerialComm has been developed to implement the following serial port communication operations:
• Open
• Configuration
• Read
• Write
• Close
A background in Visual C++ programming is sufficient to grasp the technical details of this article. Access to MSDN is required for looking at the definition of functions, structures etc. used in this article. The article takes a look at only non-overlapped(synchronous) operations supported by Win32. My next article will show implementation of serial port communication using overlapped (asynchronous) structures.
I. Open
Before starting any communication on a serial port, we must first open a connection. This is achieved by using CreateFile function in Win32. (Those of you familiar with File I/O must be aware of this function.) The following code is used to open a serial portconnection in non-overlapped mode.
Collapse | Copy Code
m_hSerialComm = CreateFile(m_pszPortName,
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISITING,
0,
NULL);

if (m_hSerialComm == INVALID_HANDLE_VALUE)
//Handle Error Condition
The CreateFile function takes in seven parameters. (Please take a brief moment to look at this function in MSDN.)
• The first parameter specifies the port name. In our case, this is usually COM, COM2, COM3 or COM4.
• The second parameter must be GENERIC_READ | GENERIC_WRITE to support both read and write access.
• The third parameter must always be 0 for serial port communication because unlike files, serial port access cannot be shared.
• The fourth parameter is used to set security attributes. If no security attribute needs to be specified, just use NULL.
• The fifth parameter must always be set to OPEN_EXISTING.
• The sixth parameter is used to specify flags and attributes (either 0 or FILE_ATTRIBUTE_NORMAL can be used).
• The last parameter must always be NULL as we only support non-overlapped communication.
The HANDLE m_hSerialComm that is returned by the CreateFile function can now be used for performing operations like Configure, Read and Write.
II. Configuration
After opening connection to a serial port, the next step is usually to configure the serial port connect settings like Baud Rate, Parity Checking, Byte Size, Error Character, EOF Character etc. Win32 provides a DCB struct that encapsulates these settings (referto MSDN for DCB struct definition). Configuration of the serial port connection settings is performed in the following three steps:
1. First, we have to access the present settings of the serial port using the GetCommState function. The function takes in two parameters:
o The first parameter is the HANDLE we received from the call to the CreateFile function.
o The second parameter is an output parameter, which returns the DCB structure containing the present settings.
2. Next, using the DCB structure that we obtained from the previous step, we can modify the necessary settings according to the application needs.
3. Finally, we update the changes by using the SetCommState method.
The following code is a sample shown explaining the use of these functions. (Note: A number of the fields in the DCB struct are not used in the example. A more sophisticated application must allow the client to configure these settings.)
Collapse | Copy Code
DCB dcbConfig;

if(GetCommState(m_hSerialComm, &dcbConfig))
{
dcbConfig.BaudRate = dwBaudRate;
dcbConfig.ByteSize = 8;
dcbConfig.Parity = NOPARITY;
dcbConfig.StopBits = ONESTOPBIT;
dcbConfig.fBinary = TRUE;
dcbConfig.fParity = TRUE;
}

else
//Handle Error Condition

if(!SetCommState(m_hSerialComm, &dcbConfig))
//Handle Error Condition
Another important part of configuration of serial port connection settings is setting timeouts. Again, Win32 provides a COMMTIMEOUTS struct for setting Read and Write Timeouts. We are also provided with two functions GetCommTimeouts and SetCommTimeouts to access,modify, and update the timeout settings. The following code can be used to set the serial port timeouts:
Collapse | Copy Code
COMMTIMEOUTS commTimeout;

if(GetCommTimeouts(m_hSerialComm, &commTimeout))
{
commTimeout.ReadIntervalTimeout     = 1000 * dwReadTimeOutIntervalInSec;
commTimeout.ReadTotalTimeoutConstant     = 1000 * dwReadTimeOutConstantInSec;
commTimeout.ReadTotalTimeoutMultiplier     = 1000 * dwReadTimeOutMultiplier;
commTimeout.WriteTotalTimeoutConstant     = 1000 * dwWriteTimeOutInSec;
commTimeout.WriteTotalTimeoutMultiplier = 1000 * dwWriteTimeOutMultiplier;
}

else
//Handle Error Condition

if(!SetCommTimeouts(m_hSerialComm, &commTimeout))
//Handle Error Condition
III. Read
There are many different implementations for reading from a Serial Port Connection. In the CSyncSerialComm class that is provided with this article, serial communication events are used in the implementation of the Read operation. There are three importantsets in this implementation.
1. First, we setup a Read Event using the SetCommMask function. (Note: This function can also be used to set many other different types of serial communication events.) This event is fired when a character is read and buffered internally by Windows OperatingSystem. The SetCommMask function takes in two parameters:
o The first parameter is the HANDLE we received from the call to the CreateFile function.
o The second parameter is used to specify the event type. To specify a Read Event, we use EV_RXCHAR flag.
2. After calling the SetCommMask function, we call the WaitCommEvent function to wait for the event to occur. This function takes in three parameters:
o The first parameter is the HANDLE we received from the call to the CreateFile function.
o The second parameter is an output parameter, which reports the event type that was fired.
o The third parameter is a pointer to an OVERLAPPED structure. Since, our implementation is for Non-Overlapped communication, it must be set to NULL.
3. Once this event is fired, we then use the ReadFile function to retrieve the bytes that were buffered internally. The ReadFile function takes in five parameters:
o The first parameter is the HANDLE we received from the call to the CreateFile function.
o The second parameter is a buffer that would receive the bytes if the ReadFile function returns successfully.
o The third parameter specifies the size of our buffer we passed in as the second parameter.
o The fourth parameter is an output parameter that will notify the user about the number of bytes that were read.
o The last parameter is always NULL for our purpose since we do not deal with non-overlapped mode.
In our example, we read one byte at a time and store it in a temporary buffer. This continues until the case when ReadFile function returns successfully and the fourth parameter has a value of 0. This indicates that the internal buffer used by Windows OS isempty and so we stopping reading. The following code shows the implementation of this technique:
Collapse | Copy Code
std::stringbuf sb;
DWORD dwEventMask;

if(!SetCommMask(m_hSerialComm, EV_RXCHAR))
//Handle Error Condition

if(WaitCommEvent(m_hSerialComm, &dwEventMask, NULL))
{
char szBuf;
DWORD dwIncommingReadSize;

do
{
if(ReadFile(m_hSerialComm, &szBuf, 1, &dwIncommingReadSize, NULL) != 0)
{
if(dwIncommingReadSize > 0)
{
dwSize += dwIncommingReadSize;
sb.sputn(&szBuf, dwIncommingReadSize);
}
}

else
//Handle Error Condition
} while(dwIncommingReadSize > 0);
}

else
//Handle Error Condition
IV. Write
Write operation is easier to implement than Read. It involves using just one function, WriteFile. It takes in five parameters similar to ReadFile function. The second parameter in WriteFile specifies the buffer to be written to the serial port. The followingexample shows implementation of Write using WriteFile. It writes one byte at a time until all the bytes in our buffer are written:
Collapse | Copy Code
unsigned long dwNumberOfBytesSent = 0;

while(dwNumberOfBytesSent < dwSize )
{
unsigned long dwNumberOfBytesWritten;

if(WriteFile(m_hSerialComm, &pszBuf[dwNumberOfBytesSent], 1,
&dwNumberOfBytesWritten, NULL) != 0)
{
if(dwNumberOfBytesWritten > 0)
++dwNumberOfBytesSent;
else
//Handle Error Condition
}

else
//Handle Error Condition
}
V. Close
After we finish all our communication with the serial port, we have to close the connection. This is achieved by using the CloseHandle function and passing in the serial port HANDLE we obtained from the CreateFile function call. Failure to do this results inhard to find handle leaks. The follow code snippet explains the use of this function:
Collapse | Copy Code
if(m_hSerialComm != INVALID_HANDLE_VALUE)
{
CloseHandle(m_hSerialComm);
m_hSerialComm = INVALID_HANDLE_VALUE;
}
Conclusion
I hope my demonstration of the use of Win32 functions in serial port communication will serve as a starting point. I am sure as you browse through MSDN looking for these function definitions, you will come across more sophisticated functions that might be bettersuited for your application needs.
License
This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 基于vue实现web端超大数据量表格

    一、整体思路 1.思路来源 最近工作比较忙好久没写文章了,有一丢丢不知道如何写起了,那就先说说我是为什么要开发本文的组件把。公司有一个定位系统,基本上来说一个定位单位一分钟或者更短就会有一个定位点,这样一天下来就会有很多定位点了,如果表格想要一下子放一天甚…...

    2024/4/17 15:18:08
  2. 无法启动iis express web 服务器

    此问题困扰了2天,终于解决,记录一下过程。1,网友答案1:在baidu上搜了无法启动iis express web 服务器,有网友回答是 windows 防火墙需要关闭,打开防火墙看了一下是已经关闭状态,所以不是防火墙问题。也许防火墙也是导致此问题的一个原因。 2,网友答案2:在解决方案文件…...

    2024/4/17 15:28:38
  3. 《蜗居》正房太太送给二奶的话【转…

    转载自王然 【第一次见面】 太可惜了。郭小姐,你这么风华正茂,和他在一起,真的太可惜了。 他是什么样的人,我比你要清楚。 他这人,一辈子,不说一句错话,不做一件错事。 所有的人和事,都是他棋盘上的棋子。 像我这样的,做他的棋子也就罢了。 可是你还这么年轻,太可惜了…...

    2024/4/27 14:52:42
  4. Openstack Horizon Icehouse Blueprint介绍(转)

    原文地址:陈沙克日志--------------------------------------Openstack的Icehouse,4月17日发布,目前Horizon的所有Blueprint都已经发布。Icehouse,对于Horizon来说,大概完成了70%的工作量,很多重要的功能,都需要等待下一个版本去实现,如果全部都实现,其实还是非常酷的…...

    2024/4/17 15:17:26
  5. Vue+iview的表格插件在render函数中使用Tooltip文字提示时,文字超出字段长度后被遮挡显示不完全与Tooltip折行问题的解决

    前言:最近做项目中表格偏多,而且要展示的字段大部分都很长,在要求将信息完全展示的同时又要保持界面的美观整洁的情况下,我给Table的每个字段都做了宽度限制(同时也是为了适应不同分辨率下显示不受影响),这样就需要在指定的宽度内显示指定的数据长度,超出的长度隐藏,在T…...

    2024/4/17 15:11:08
  6. 学生管理系统-知识点篇

    1.sTokens=split(SQL)split函数:返回一个下标从0开始的一维数组,它包含指定数目的子字符串sTokens(0)=”SELECT”sTokens(1)=”*”sTokens(2)=”FROM”sTokens(3)=”student_info”*本段代码作用:将一个查询语句分为一个数组2.InStr("INSERT,DELETE,UPDATE", UCas…...

    2024/4/27 14:09:51
  7. 求助,win10系统不能开启IIS

    360截图20170705165502279.jpg (17.93KB, 下载次数: 7)错误代码...

    2024/4/17 15:28:55
  8. 鼠标双击事件以及时间间隔判断

    一,转自https://blog.csdn.net/cnike/article/details/4870064在Windows平台上,鼠标左键的按下、松开、快速的两次点击会产生WM_LBUTTONDOWN、WM_LBUTTONUP和WM_LBUTTONDBLCLK消息,但是Windows根据什么来区分连续的两次鼠标按键操作,是两次独立的单击,还是一次双击呢?最近…...

    2024/4/19 21:04:37
  9. 四川话四级考试题目答案及详解(二)

    四川话四级考试题目答案及详解(二)——阿风下面是四川话四级考试中多选题和填空题的答案及详解:二、多选题下面句子中"整"字用法正确的是?(4分) A.你这个发型整的还巴适哈!B.龟儿不落教,去整他一顿C.老张请客说:"大家尽管整哦!" D.这回考试我整了个…...

    2024/4/24 23:03:16
  10. vs 无法启动IIS Express Web服务器的终极解决方案

    环境:win10(win7刚升级上去) vs2013vs启动个mvc的项目出现这个提示。解决方案:(建议先看第5种,不行再自行尝试前面的解决方案)1.修改web属性2.装iis3.关闭防火墙(或加白名单)4.安装WebMatrix3.0(这个我觉得是最没必要的,IIS Express8.0介绍中说还要安装WebMatrix或v…...

    2024/4/25 1:49:27
  11. OSGI Blueprint入门之八

    Blueprint除了组装bean,osgi服务引用等的DI(IOC)功能之外,还可通过各种命名空间(namespace)来扩展。在《[url=http://killko.iteye.com/blog/1787606]Blueprint入门之六[/url]》中,我们就用过一个与ConfigAdmin相关的命名空间(http://aries.apache.org/blueprint/xmlns/…...

    2024/4/11 16:58:57
  12. 鼠标双击事件 MINIUI

    onrowdblclick="rowdblclick" 控件方法 function rowdblclick(e) { var data = e.record; edit(data);}设置选中行转载于:https://www.cnblogs.com/JAVA-BK/p/11512353.html...

    2024/4/11 16:59:27
  13. vue+element UI实现树形表格,带树形选择的复选框

    一:在component文件夹下新建如下treeTable文件夹,里面有2个文件:eval.js:将数据转换成树形数据/*** @Author: jianglei* @Date: 2017-10-12 12:06:49*/ "use strict"; import Vue from "vue"; export default function treeToArray(data,expandAll,pa…...

    2024/4/20 14:36:57
  14. 做一个明媚的女子,不倾国也不倾城

    我愿做一个明媚的女子。不倾国,不倾城,只倾其所有过自己要的生活.听着办公室哒哒哒的键盘声,和同事之间的交流声,我依旧我行我素的带着耳机做自己喜欢的事情。仿佛自然的屏蔽了这世俗的烦忧。忙碌的生活我依然习惯了懒散,仿佛自己不属于这个快节奏的生活一样。不因为名利而…...

    2024/4/20 16:18:49
  15. VS2019 无法启动IIS Express Web服务器问题的解决

    环境:Win10 1909 问题:在进行ASP.NET文件调试过程中出现错误: 无法启动IIS Express Web服务器 解决方案:解除 2840 端口的占用或 删除项目文件夹下的.vs文件夹,重新启动项目如何解除端口占用:快捷键win+R,输入cmd,快速调出命令行 在命令行输入netstat -ano|findstr 284…...

    2024/4/12 14:23:11
  16. osgi gemini blueprint环境

    Gemini Blueprint应用1. Gemini Blueprint环境搭建1.0. Gemini blueprint环境下载个人建议下载virgo环境,而不是下载Gemini web开发包。http://www.eclipse.org/downloads/download.php?file=/virgo/release/VP/3.6.3.RELEASE/virgo-tomcat-server-3.6.3.RELEASE.zip&m…...

    2024/4/13 1:59:33
  17. 又发现一款纯js开源电子表格Luckysheet

    据官网介绍这个电子表格插件,是一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源. 官网链接:Luckysheet官网 在线DEMO特性包含:表格设置,包括冻结行列、合并单元格、筛选、排序、查询、条件格式、批注; 支持数据分析功能包括透视表、分列、矩阵操作、内置385个计…...

    2024/4/10 19:09:12
  18. window.opener.document

    比如通过A窗口打开B窗口,那么B的opener就是A,opener就是打开当前窗口的那个window, window.opener.document指打开当前窗口的那个window中的document.你可以在当前窗口中用下例改变上级窗口中的响应事件...

    2024/4/17 15:28:50
  19. 杂谈:程序猿生存法则

    “程序猿”北上广深一批游走于科技前沿而不被外界看好的异类 ,情商低,不爱说话,闷骚,聚集成簇的根根秀发,依稀可见的头皮,千篇一律的短袖,永不换洗的牛仔裤,在我看来其实不然,笔者步入猿类已有5年之久,每天游走于代码和bug之间,虽然失去了一些,但是我们得到了更多,…...

    2024/4/17 15:29:20
  20. 使用python制作ArcGIS插件(6)案例分析

    利用ArcPy制作航空制图插件 By 李远祥 这是笔者两年多前写的一个面向航路图做的一个插件,基本上将航路图的制作进行流程化,制作成为可交互的插件,只要有航路和机场的信息,就可以直接生成一个航路图,每个图的时间成本大概为3分钟左右。 整个插件都是使用Python进行制作,其…...

    2024/4/17 15:28:38

最新文章

  1. PAM由哪些字段组成、各字段含义

    PAM&#xff08;Pluggable Authentication Modules&#xff09;配置文件中的每个字段代表了不同的含义&#xff0c;由以下几个字段组成&#xff1a; 服务名称&#xff08;Service Name&#xff09;&#xff1a;表示该 PAM 配置适用于哪个系统服务&#xff0c;例如 sshd、login、…...

    2024/4/27 15:43:26
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 正交投影的矩阵(基变换与过渡矩阵的例子)

    在 n n n维欧几里得空间 V V V中&#xff0c;有子空间 W W W. 如果用自然基 ( e i ) 1 ≤ i ≤ n (\mathbf{e}_i)_{1\leq i \leq n} (ei​)1≤i≤n​&#xff0c;设 W s p a n ( w 1 , … , w d ) ( 0 < d < n ) W\mathrm{span}(w_1, \ldots, w_d)\; (0< d < n) W…...

    2024/4/27 9:24:28
  4. ntp服务器搭建

    1、手动修改时区 CST可以为如下4个不同的时区的缩写&#xff1a; 美国中部时间&#xff1a;Central Standard Time (USA) UT-6:00 澳大利亚中部时间&#xff1a;Central Standard Time (Australia) UT9:30 中国标准时间&#xff1a;China Standard Time UT8:00 古巴标准时间&a…...

    2024/4/25 1:36:26
  5. 考研数学|《1800》+《660》精华搭配混合用(经验分享)

    肯定不行&#xff0c;考研数学哪有这么容易的&#xff01; 先说说这两本习题册&#xff0c;李永乐老师推出的新版660题&#xff0c;相较于18年前的版本&#xff0c;难度略有降低&#xff0c;更加适合初学者。因此&#xff0c;对于处于基础阶段的学习者来说&#xff0c;新版660…...

    2024/4/25 1:54:25
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/26 18:09:39
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/26 20:12:18
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/27 4:00:35
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/25 18:39:22
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/26 21:56:58
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/27 9:01:45
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/26 16:00:35
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/25 18:39:16
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/26 22:01:59
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/25 2:10:52
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/25 18:39:00
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57