【LGame学堂008】简单控件之LButton
注:以下内容是昨晚写的,不是今天写的。
现在是深圳时间晚上
22点
43分,好吧,笨木头我是一个不合格的程序员,
23点开始我就可以上床睡大觉
~所以,我这么努力地写心得,大觉多多支持
~(耶
~苦肉计得逞
~)
好吧
~本章来看看咱们游戏里必不可少的控件——按钮。
这是
LGame里最简单的控件之一了,直接上代码呗:
糟糕,有点过于简单,以至于我不知道怎么讲解了~嘻嘻
好吧,这样就创建了一个背景图片为"assets/btn.png"且坐标在(100, 100)的按钮了~
当然,最重要的是add(btn)这一步,如果大家有下载LGame源码的,就可以看到,这一步,实际上是调用了Screen的add()函数:
如果大家对上一章的内容还有印象的话,那就应该很清楚了,add函数就是把按钮添加到desktop里了。
OK,来点有意思的——点击事件。
点击事件是一个按钮必须有的嘛,没了它,按钮就有没有什么存在的意义了~来,看看LButton是怎么添加点击事件的吧:
是的,如果你是我的忠实读者的话,你应该还记得“钩子函数”(好吧,我开玩笑的,相信聪明的你早就知道钩子函数了
~)。其实
LButton的点击事件也是通过钩子函数的方法来实现的。
LButton有个
doClick()函数,只要我们重写这个函数,就可以实现点击事件了。
OK,聪明的你,相信不需要我再解释了
~
啰嗦一下:
其实我个人还是比较喜欢
Android自带
Button的那种设置点击事件的方法的(用
setOnClickListener()方法),总感觉
LGame这种方式有点不习惯,嘿嘿,个人爱好而已
~
来~咱们再来看看一个让人兴奋的功能好不好?~
好~!
我们来看看LButton的setImages(LImage[] imgaes)函数,这个函数有什么用呢?很神奇的,看看官方的解释:
插入一组图像(1-4张皆可,超出忽略不计),并将它们作为LButton的按钮显示用图,以分别对应按钮未点击、点击、屏幕划过以及其它状态。
小弟暂时只试过前面两种状态,各位感兴趣的可以自己研究一下哈~
好吧,我蛮困的了,关于LButton,我就讲到这里啦,大家可以自己研究一下其它功能,关于LButton,官方文档有API的解释。
-
-
原文第一次发布于Android-Fans论坛:
http://www.android-fans.net/thread-1576-1-1.html
分享到:
相关推荐
【LGame学堂008.控件篇】简单控件之LButton 源码 文章地址: http://blog.csdn.net/musicvs/article/details/7542125
一个很好的按钮控件。
关于delphi的API函数中的虚拟键码
_LBUTTON))//如果鼠标按下且移动 { m_myPen.Push(point);//添加中间点 InvalidateRect(rect .FALSE);//刷新区域 } 4 如何擦除所绘制的痕迹 m_myPen.Clear(); Invalidate(FALSE); 按照上述4步,你购买了...
_LBUTTON))//如果鼠标按下且移动 { m_myPen.Push(point);//添加中间点 InvalidateRect(rect .FALSE);//刷新区域 } 4 如何擦除所绘制的痕迹 m_myPen.Clear(); Invalidate(FALSE); 按照上述4步,你购买了...
sendMessage(WinHandle,WM_LBUTTONDOWN,MK_LBUTTON, MAKELPARAM (p1.X, p1.Y)); //鼠标按下 sleep(40); sendMessage(WinHandle,WM_LBUTTONUP, MK_LBUTTON, MAKELPARAM (p1.X, p1.Y)); // 鼠标抬起 end; if ...
HGE 架构在DirectX 8.0 之上,能够跑在大多数的Windows 系统上。 1. 选用HGE 的理由: 1)专业化--- 专注于2D 领域 2)简单化--- 非常容易使用 3)技术优势--- 基于Direct3D API 有较好的性能和特性 4)免费--- 对于...
If GetAsyncKeyState(VK_LBUTTON) = -32767 Then Text1.Text = Text1.Text " 鼠标左键 " ElseIf GetAsyncKeyState(VK_RBUTTON) = -32767 Then Text1.Text = Text1.Text " 鼠标右键 " End If
2、开发注重交互的简单应用程序可以使用对话框为基础的窗口,如果文件读写简单这可利用CFile进行。 3、开发注重交互并且文件读写复杂的的简单应用程序可以利用以CFormView为基础视的单文档视结构。 4、利用对话框...
自己做的一个基于MFC单文本文档的画图程序 支持任意线 直线 点 多边形 颜色设置 字体设置 橡皮擦 双缓冲 橡皮筋 可以另存为位图
虚拟键码表VK_LBUTTON 1 鼠标左键 VK_RBUTTON 2 鼠标右键 VK_CANCEL 3 Cancel
虚拟键码 对应值 对应键 VK_LBUTTON 1 鼠标左键 VK_RBUTTON 2 鼠标右键 VK_CANCEL 3 Cancel VK_MBUTTON 4 鼠标中键
Delphi键盘按键伪码 常数名称 十六进制值 十进制值 对应按键 VK_LBUTTON 01 1 鼠标的左键 VK_RBUTTON 02 2 鼠标的右键 VK-CANCEL 03 3 Contol-break 执行 VK_MBUTTON 04 4 鼠标的中键(三按键鼠标)
Capturer Capturer是使用Qt开发的一款截图、录屏和录制GIF软件,支持Windows和Linux系统。 录屏和录制GIF依赖于FFmpeg,请. 快捷键 选择框通用快捷键 ...LButton Double Click 截图并保存到粘贴板 编辑 Keys Action
VK_LBUTTON 1 鼠标左键 VK_RBUTTON 2 鼠标右键 VK_CANCEL 3 Cancel VK_MBUTTON 4 鼠标中键 VK_XBUTTON1 5 VK_XBUTTON2 6 VK_BACK 8 Backspace VK_TAB 9 Tab VK_CLEAR 12 Clear VK_RETURN 13 Enter VK_...
肯尼 开发平台:win32 + directx9 开发环境:Visual Studio ...NPC上的LBUTTON-与NPC交谈(任务和商店系统) F11-启用调试模式 F10-禁用调试模式 #Lisence该游戏是根据开源许可证发行的。 #参考 ( 下的图形资源)
1 定义消息 在c#中消息需要定义成windows系统中的原始的16进制数字,比如 const int WM_Lbutton = 0x201; //定义了鼠标的左键点击消息 public const int USER = 0x0400 // 是windows系统定义的用户消息 2 消息发送 ...