UCGUI学习笔记.doc_第1页
UCGUI学习笔记.doc_第2页
UCGUI学习笔记.doc_第3页
UCGUI学习笔记.doc_第4页
UCGUI学习笔记.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

文本显示函数GUI_GotoXY(10,10); / 设置坐标(以像素为单位)GUI_DispString(Hello world!); / 显示文本void GUI_DispCharAt(U16 c, I16P x, I16P y);在当前视窗使用当前字体在指定坐标处显示单个字符。void GUI_DispChars(U16 c, int Cnt); 参 数 含 意 c 显示的字符 Cnt 重复的次数(0Cnt32767)在屏幕上显示一行“*”: GUI_DispChars(*, 30);void GUI_DispStringAt(const char GUI_FAR *s, int x, int y);在当前视窗,使用当前字体在指定坐标显示作为参数的字符串。void GUI_DispStringInRect ( const char GUI_FAR *s, const GUI_RECT *pRect, int Align);参 数 含 意 s 显示的字符串 pRect 写像素的客户窗口的矩形区域 Align垂直对齐:GUI_TA_TOP,GUI_TA_BOTTOM,GUI_TA_VCENTER; 水平对齐:GUI_TA_LEFT,GUI_TA_RIGHT,GUI_TA_HCENTER;在当前视窗的水平及垂直对中的坐标显示字“Text”: GUI_RECT rClient; GUI_GetClientRect(&rClient); GUI_DispStringInRect(Text, &rClient, GUI_TA_HCENTER | GUI_TA_VCENTER);int GUI_SetTextMode(int TextMode);GUI_TEXTMODE_NORMAL 设置正常文本,这是默认的设置,该数值等同于0 GUI_TEXTMODE_REVERSE 设置反转文本 GUI_TEXTMODE_TRANSPARENT 设置透明文本 GUI_TEXTMODE_XOR 反相显示的文本char GUI_GotoXY(int x, int y); char GUI_GotoX(int x);char GUI_GotoY(int y);GUI_GotoXY()对当前视窗文本坐标的X坐标和Y坐标两部分同时设置。 GUI_GotoX()只对当前视窗文本坐标的X坐标部分进行设置,Y坐标保持不变。 GUI_GotoY()只对当前视窗文本坐标的Y坐标部分进行设置,X坐标保持不变。void GUI_DispCEOL(void)清除当前视窗(或屏幕)从当前文本坐标到行末显示区域的内容,高度为当前字体高度。在屏幕上显示“Hello world”,等待1秒钟,然后在同步坐标显示“Hi”,代替原先的显示的字符: GUI_DispStringAt(Hello world, 0, 0); / 显示文本 Delay(1000); GUI_DispStringAt(Hi, 0, 0); GUI_DispCEOL();显示数值void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len);在当前视窗的当前文本坐标,使用当前字体显示十进制数值,指定显示字符的数量。void GUI_DispDecMin(I32 v);在当前视窗的当前文本坐标,使用当前字体显示十进制数值。不需要指定长度;自动使用最小的长度值。第6章2-D图形库GUI_DRAWMODE GUI_SetDrawMode(GUI_DRAWMODE mode);选择指定的绘图模式GUI_DRAWMODE_NORMAL 默认:绘点,线,区域,位图 GUI_DRAWMODE_XOR 当在屏幕上另一个物体上用颜色覆盖时对点,线,区域进行反相示/ 显示两个圆,其中第二个以XOR模式与第一个结合 GUI_Clear(); GUI_SetDrawMode(GUI_DRAWMODE_NORMAL); GUI_FillCircle(120, 64, 40); GUI_SetDrawMode(GUI_DRAWMODE_XOR); GUI_FillCircle(140, 84, 40); 上面范例程序运行结果的屏幕截图void GUI_ClearRect(int x0, int y0, int x1, int y1)在当前视窗的指定位置通过向一个矩形区域填充背景色来清除它void GUI_DrawPixel(int x, int y)在当前视窗的指定坐标绘一个像素点void GUI_DrawPoint(int x, int y)在当前视窗使用当前尺寸笔尖绘一个点void GUI_FillRect(int x0, int y0, int x1, int y1)在当前视窗指定的位置绘一个矩形填充区域void GUI_DrawBitmap(const GUI_BITMAP*pBM, int x, int y)在当前视窗的指定位置绘一幅位图位图数据必须定义为像素像素。每个像素等同于一位。最高有效位(MSB)定义第一个像素;图片数据以位流进行说明,以第一个字节的MSB作为起始。新的一行总是在一个偶数地址开始,而位图的第N行在地址偏移量n* BytesPerLine处开始。位图可以在客户区中任意一点显示,位图转换器用于产生位图void GUI_DrawBitmapMag( const GUI_BITMAP* pBM, int x0, int y0, int XMul, int YMul);参 数 含 意 pBM 所显示位图的指针 x0 位图在屏幕上位置的左上角X坐标 y0 位图在屏幕上位置的左上角Y坐标 XMul X轴方向比例因数 YMul Y轴方向比例因数void GUI_DrawHLine(int y, int x0, int x1)在当前视窗从一个指定的起点到一个指定的终点,以一个像素厚度画一条水平线参 数 含 意 y Y轴坐标 x0 起点的X轴坐标 x1 终点的X轴坐标void GUI_DrawLine(int x0, int y0, int x1, int y1)在当前视窗的指定始点到指定终点绘一条直线void GUI_DrawLineRel(int dx, int dy)在当前视窗从当前坐标(X,Y)到一个端点绘一条直线,指定X轴距离和Y轴距离参 数 含 意 dx 到所绘直线末端X轴方向的距离 dy 到所绘直线末端Y轴方向的距离void GUI_DrawLineTo(int x, int y)在当前视窗从当前坐标(X,Y)到一个端点绘一条直线,指定端点的X轴,Y轴坐标参 数 含 意 x 终点的X轴坐标 y 终点的Y轴坐标void GUI_DrawVLine(int x, int y0, int y1)在当前视窗从一个指定的起点到一个指定的终点,以一个像素厚度画一条垂直线参 数 含 意 x X轴坐标 y0 起点的Y轴坐标 y1 终点的Y轴坐标void GUI_DrawPolygon(const GUI_POINT* pPoint, int NumPoints, int x, int y)在当前视窗中绘一个由一系列点定义的多边形的轮廓参 数 含 意 pPoint 显示的多边形的指针 Numpoints 在点的序列中指定点的数量 x 原点的X轴坐标 y 原点的Y轴坐标void GUI_EnlargePolygon ( GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Len);通过指定一个以像素为单位的长度,对多边形的所有边进行放大(扩边,与对多边形进行放大的概念不一样)参 数 含 意 pPoint 目标多边形的指针 pSrc 源多边形的指针 Numpoints 在点的序列中指定点的数量 Len 对多边形进行放大的以像素为单位的长度void GUI_DrawCircle(int x0, int y0, int r)在当前视窗指定坐标以指定的尺寸绘制一个圆参 数 含 意 x0 在客户视窗中圆心的X轴坐标(以像素为单位) y0 在客户视窗中圆心的Y轴坐标(以像素为单位) r 圆的半径(直径的一半)。 最小值:0(结果是一个点) 最大值:180/ 画同心圆 void ShowCircles(void) int i; for (i=10; i50; i+) GUI_DrawCircle(120,60,i); void GUI_FillCircle(int x0, int y0, int r)在当前视窗指定坐标以指定的尺寸绘制一个填充圆参 数 含 意 x0 在客户视窗中圆心的X轴坐标(以像素为单位) y0 在客户视窗中圆心的Y轴坐标(以像素为单位) r 圆的半径(直径的一半)。 最小值:0(结果是一个点) 最大值:180void GUI_DrawEllipse (int x0, int y0, int rx, int ry)在当前视窗的指定坐标以指定的尺寸绘一个椭圆x0 在客户视窗中圆心的X轴坐标(以像素为单位) y0 在客户视窗中圆心的Y轴坐标(以像素为单位) rx 椭圆的X轴半径(直径的一半)。 最小值:0,最大值:180 ry 椭圆的Y轴半径(直径的一半)。 最小值:0,最大值:180void GUI_FillEllipse(int x0, int y0, int rx, int ry)按指定的尺寸绘一个填充椭圆参 数 含 意 x0 在客户视窗中圆心的X轴坐标(以像素为单位) y0 在客户视窗中圆心的Y轴坐标(以像素为单位) rx 椭圆的X轴半径(直径的一半)。 最小值:0,最大值:180 ry 椭圆的Y轴半径(直径的一半)。 最小值:0,最大值:180/* 椭圆范例 */ GUI_SetColor(0xff); GUI_FillEllipse(100, 180, 50, 70); GUI_SetColor(0x0); GUI_DrawEllipse(100, 180, 50, 70); GUI_SetColor(0x000000); GUI_FillEllipse(100, 180, 10, 50); void GL_DrawArc (int xCenter, int yCenter, int rx, int ry, int a0, int a1)在当前视窗的指定坐标按指定尺寸绘一段圆弧,一段圆弧就是一个圆的一部分轮廓参 数 含 意 xCenter 客户视窗中圆弧中心的水平方向坐标(以像素为单位) yCenter 客户视窗中圆弧中心的垂直方向坐标(以像素为单位) rx X轴半径(像素)。 ry Y轴半径(像素)。 a0 起始角度(度) a1 终止角度(度)范例 void DrawArcScale(void) int x0 = 160; int y0 = 180; int i; char ac4; GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetPenSize( 5 ); GUI_SetTextMode(GUI_TM_TRANS); GUI_SetFont(&GUI_FontComic18B_ASCII); GUI_SetColor( GUI_BLACK ); GUI_DrawArc( x0,y0,150, 150,-30, 210 ); GUI_Delay(1000); for (i=0; i= 23; i+) float a = (-30+i*10)*3.1415926/180; int x = -141*cos(a)+x0; int y = -141*sin(a)+y0; if (i%2 = 0) GUI_SetPenSize( 5 ); else GUI_SetPenSize( 4 ); GUI_DrawPoint(x,y); if (i%2 = 0) x = -123*cos(a)+x0; y = -130*sin(a)+y0; sprintf(ac, %d, 10*i); GUI_SetTextAlign(GUI_TA_VCENTER); GUI_DispStringHCenterAt(ac,x,y); 第10章 存储设备GUI_MEMDEV_Handle GUI_MEMDEV_Create(int x0, int y0, int XSize, int YSize)建立一个存储设备参 数 含 意x0 存储设备的X轴坐标y0 存储设备的Y轴坐标XSize 存储设备的X轴尺寸YSize 存储设备的Y轴尺寸void GUI_MEMDEV_CopyToLCD(GUI_MEMDEV_Handle hMem)将一个存储设备的内容从内存拷贝到 LCDhMem 存储设备的句柄void GUI_MEMDEV_Delete(GUI_MEMDEV_Handle hMem)删除一个存储设备参 数 含 意hMem 存储设备的句柄void GUI_MEMDEV_Select(GUI_MEMDEV_Handle hMem)激活一个存储设备(或如果句柄为 0 则激活 LCD)void GUI_MEMDEV_Clear(GUI_MEMDEV_Handle hMem)将存储设备的所有内容标志为“未改变的”void GUI_MEMDEV_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论