已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
pascal中crt单元用法Crt单元 过程 Assigncrt(F)F:Text将文件F放置于显示器 ClrEol删除当前行上的字符 ClrScr清屏并将光标移动至(1,1) CursorBig将屏幕输出状态改为改写 CursorOff关闭光标 CursorOn打开光标并将光标移动至(1,1) Delay(T)T:Integer等待T毫秒 GotoXY(X,Y)X,Y:Integer将光标移动至(X,Y) InsLine在光标所在位置插入行 DelLine删除光标所在当前行 LowVideo选择低亮度显示字符(颜色代码减8) NormVideo选择正常亮度显示字符 HighVideo选择高亮度显示字符(颜色代码加8) NoSound扬声器停止发声 Sound(HZ)HZ:Integer以Hz频率发声 Readkey等待键盘输入 TextColor(Color)Color:White,Green. Color:Integer 将正文颜色设为Color TextBackground(Color)Color:White,Green. Color:Integer 将背景色设置为Color TextMode(X)X:Integer选择X为显示模式(有的X值无法正常显示) Windows(X1,Y1,X2,Y2)X1,Y1,X2,Y2:Integer 在屏幕上建一个列从X1到X2,行从Y1到Y2的窗口函数KeyPressedBoolean判断键盘是否输入ReadkeyChar键盘输入的字符WhereXInteger返回光标的列数WhereYInteger返回光标的行数注:Delline与Clreol的区别:Delline后,下一行会往上提,Clreol不会。在Pascal中,屏幕坐标十分奇怪:(X,Y)中,X指的是列数,Y指的是行数,与正常习惯正好相反。WhereX/WhereY也是这样。Pascal中的颜色代码:0黑1深蓝2绿3天蓝4红5粉6橙7白8灰9蓝紫10亮绿11亮蓝12亮红13亮粉14亮黄15亮白16闪黑17闪蓝18闪绿19闪天蓝20闪红21闪粉22闪橙23闪白24闪灰25闪蓝紫26闪亮绿27闪亮蓝28闪亮红29闪亮粉30闪亮黄31闪亮白KeyPressed与Readkey连用效果好:RepeatB:=Keypressed;IfBThenH:=Readkey;IfH=0ThenHalt;UntilH=;Mouse单元过程InitMouse启用鼠标DoneMouse停用鼠标HideMouse隐藏鼠标指针ShowMouse显示鼠标指针SetMouseXY(X,Y)X,Y:Integer将鼠标指针移动至(X,Y)GetMouseEvent(MouseEvent:TMouseEvent)得到鼠标数据并将其存入MouseEvent中PutMouseEvent(MouseEvent:TMouseEvent)用MouseEvent代替当前鼠标数据函数DetectMouseInteger返回值为0时代表没有鼠标,否则返回鼠标按键数GetMouseButtonsInteger0代表没有按键,1代表左键,2代表右键,4代表中间键(非滚轮)GetMouseXInteger返回鼠标所在位置列数GetMouseYInteger返回鼠标所在位置行数PollMouseEvent(MouseEvent:TMouseEvent)Boolean返回鼠标信息是否被更新(True为未更新)GetMouseDriver用途不明SetMouseDriver用途不明常数MouseLeftButtonInteger代表左键,值为1MouseRightButtonInteger代表右键,值为2MouseMiddleButtonInteger代表中间键(非滚轮),值为4MouseEventBufSizeInteger鼠标缓冲,值为16MouseActionDownInteger代表按下鼠标,值为1MouseActionUpInteger代表松开鼠标,值为2MouseActionMoveInteger代表移动鼠标,值为4errMouseBaseInteger基本鼠标错误,值为1030errMouseInitErrorInteger鼠标使用错误,errMouseBase+0errMouseNotImplementedInteger功能无法实现,errMouseBase+1注:对TMouseEvent的解释:记录类型,表示鼠标的综合数据。域Buttons:Integer按键信息,等于GetMouseButtonsX,Y:Integer指针位置信息,等于GetMouseX/GetMouseYAction:Integer移动信息,4代表移动,0代表未移动,1代表鼠标按键按下,2代表鼠标按键抬起(如144442就是按着鼠标拖动3格)pascal crt单元详解crt单元定义的过程或函数首部形式及说明 过程或函数首部形式 说明 procedure assigncrt(var f:text); 将文本文件f与显示器CRT建立联系,任何写入f的信息显示在窗口中,儿不写入f function keypressed:boolean; 检测是否有键按下,有则函数值为true ;Shift, Alt, Ctrl不被报告function readkey:char; 等待从键盘输入一个字符,如果一个扩展键或功能键被按下,则返回ASCLL的0,你可以再调用一次readkey,读取该键键码值。Program Example3;uses Crt; Program to demonstrate the ReadKey function. varch : char;beginwriteln(Press Left/Right, Esc=Quit);repeat ch:=ReadKey; case ch of #0 : begin ch:=ReadKey; Read ScanCode case ch of #75 : WriteLn(Left); #77 : WriteLn(Right); end; end; #27 : WriteLn(ESC); end;until ch=#27 Escend. procedure textmode(mode:integer); 设置字符显示模式,mode值见下表,可以用常量标识符或常数值 procedure window(x1,y1,x2,y2:byte); 定义字符窗口:(x1,y1)为左上角坐标,(x2,y2)为右下角坐标;必须在设置模式允许范围内.窗口定义后,所有显示均在窗口进行 ;window可多次设置。procedure gotoxy(x,y:byte); 将光标移至(x,y)处 function wherex:byte; 返回当前窗口中光标所在的列数(相对当前窗口) function wherey:byte; 返回当前窗口中光标所在的行数(相对当前窗口) procedure clrscr; 清除当前窗口或屏幕 (用当前背景色,光标设置在当window的左上角)procedure clreol; 从光标位置开始清除至本行末尾,光标位置不变(不超过窗口右边界)(窗口可由window过程设置,默认80*25的) 例 Program Example9;uses Crt; Program to demonstrate the ClrEol function. varI,J : integer;beginFor I:=1 to 15 do For J:=1 to 80 do begin gotoxy(j,i); Write(j mod 10); end;Window(5,5,75,12);Write(This line will be cleared from, here till the right of the window);GotoXY(27,WhereY);ReadKey;ClrEol;WriteLn;end.prlcedure insline; 在当前光标处插入一行,光标所在行以及接下去的行都下移一行,导致window底部最后一行消失,光标位置不变 Program Example10;uses Crt; Program to demonstrate the InsLine function. beginClrScr;WriteLn;WriteLn(Line 1);WriteLn(Line 3);WriteLn;WriteLn(Oops, forgot Line 2, lets insert at the cursor postion);GotoXY(1,3);ReadKey;InsLine;Write(Line 2);GotoXY(1,10);cedure delline; 删除光标所在的当前行 ,接下来的行都上移一行,新的空行插在window的底部,光标位置不变procedure textcolor(color:byte); 设置正文前景颜色 procedure textbackground(color:byte); 设置正文背景颜色 procedure lowvideo; 选择低亮度显示字符 procedure highvideo; 选择高亮度显示字符 procedure normvideo; 选择正常亮度显示字符 Program Example14;uses Crt; Program to demonstrate the LowVideo, HighVideo, NormVideo functions. begin LowVideo; WriteLn(This is written with LowVideo); HighVideo; WriteLn(This is written with HighVideo); NormVideo; WriteLn(This is written with NormVideo);cedure delay(ms:word); 等待或延迟ms个毫秒 ,但是实际延迟的时间只是一个近似值,要看电脑运行快慢procedure sound(hz:word); 以hz指定的频率发声 procedure nosound; 关闭内部扬场声器 procedure cursorOff; 隐藏光标 procedure cursorOn;显示光标procedure cursorBig;大光标,但我不知道使用大光标后怎么变回去显示模式常数表常量标识符常数值显示模式BW400彩色显示卡40*25黑白模式CO401彩色显示卡40*25彩色模式C401同上,用于兼容3.0版本BW802彩色显示卡80*25黑白模式CO803彩色显示卡80*25彩色模式C803同上,用于兼容3.0版本Mono7单色显示卡80*25模式Font 8*8256用于ROM字模前景和背景颜色常数表常量标识符常数值颜色前景背景常量标识符常数值颜色前景背景BlackBlueGreenCyanRedMagentaBrownLightGray01234567黑蓝绿青红洋江棕浅灰YYYYYYYYYYYYYYYYDarkGrayLightBlueLightGreenLightCyanLightRedLightMagentaYellowWhite89101112131415深灰浅灰浅绿浅青浅红浅洋红黄白YYYYYYYYBlink128闪烁crt单元中的变量变量名类型单元中作用checkbreakboolean程序在执行下一个write或writeln语句之前是否做Ctrl+Break检查checkeofboolean允许文件结束的Ctrl+Z检查directvideoboolean为true时采用直接访问视频内存方式checksnowboolean为true时进行雪花过滤控制lastmodeword保存上一次显示模式textattrbyte保存当前的正文前景与背景颜色windminword保存当前窗口左上角坐标(低字节为列坐标,高字节为行坐标)windmaxword保存当前
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外协加工合同保密协议
- 女教师签约协议书范本
- 地产广告月费合同范本
- 国资独家协议合同范本
- 城边商铺出租合同范本
- 外墙真石漆修补协议书
- 土木行业转让合同范本
- 城市代理项目合同范本
- 天津电梯维保合同范本
- 城乡建设租赁合同范本
- 医院拔牙后的护理常规
- 隐蔽工程报验管理办法
- 产品批次追溯管理制度
- 英语二必考500词
- 脑出血患者营养治疗讲课件
- 全国无损检测标准化技术委员会(SACTC 56)2025年年度报告
- 《医疗质量安全核心制度落实情况监测指标(2025年版)》全面解读
- 中医助理医师考试《第一单元》真题及答案(2025年新版)
- 华硕校招硬件笔试题目及答案
- 《水利工程生产安全重大事故隐患清单指南》解读与培训
- 收费站考试复习试题及答案
评论
0/150
提交评论