如何在小程序中实现鼠标响应?
public class Hello extends Applet implements MouseListener{
public void init(){
addMouseListener(this);
}
public void mouseEntered(MouseEvent e){
au.play();
setBackground(Color.blue);
}
public void mouseExited(MouseEvent e){
setBackground(Color.black);
}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
public void mouseClicked(MouseEvent e){} }
首先在小程序中实现事件监听器,再实现鼠标用户接口
如何小程序中处理鼠标双、三击?
public class MyMouseListener extends MouseAdapter {
public void mouseClicked(MouseEvent evt) {
if (evt.getClickCount() == 3) {
// 处理鼠标三击
} else if (evt.getClickCount() == 2) {
// 处理鼠标双击
}
}
}
处理鼠标右键
public mouseClicked(MouseEvent e){
if(e.isMetaDown()){
//检测鼠标右键单击
}
}
public class MyMouseListener extends MouseAdapter {
public void mouseClicked(MouseEvent evt) {
if ((evt.getModifiers() & InputEvent.BUTTON1_MASK) != 0) {
processLeft(evt.getPoint());
//处理鼠标左键单击
}
if ((evt.getModifiers() & InputEvent.BUTTON2_MASK) != 0) {
processMiddle(evt.getPoint());
//处理鼠标中间键单击
}
if ((evt.getModifiers() & InputEvent.BUTTON3_MASK) != 0) {
processRight(evt.getPoint());
//处理鼠标右键单击
}
}
}
NSLog的格式如下所示:
* %@ 对象
* %d, %i 整数
* %u 无符整形
* %f 浮点/双字
* %x, %X 二进制整数
* %o 八进制整数
* %zu size_t
* %p 指针
* %e 浮点/双字 (科学计算)
* %g 浮点/双字
* %s C 字符串
* %.*s Pascal字符串
* %c 字符
* %C unichar
* %lld 64位长整数(long long)
* %llu 无符64位长整数
* %Lf 64位双字NSLog的定义
NSLog定义在NSObjCRuntime.h中,如下所示:
void NSLog(NSString *format, …);
基本上,NSLog很像printf,同样会在console中输出显示结果。不同的是,传递进去的格式化字符是NSString的对象,而不是chat *这种字符串指针。
示例
NSLog可以如下面的方法使用:
NSLog (@”this is a test”); NSLog (@”string is :%@”, string); NSLog (@”x=%d, y=%d”, 10, 20);
但是下面的写法是不行的:
int i = 12345; NSLog( @”%@”, i );
原因是, %@需要显示对象,而int i明显不是一个对象,要想正确显示,要写成:
int i = 12345; NSLog( @”%d”, i );
/**
* 获取SdCard路径
*/
public static String getExternalStoragePath() {
// 获取SdCard状态
String state = android.os.Environment.getExternalStorageState();
// 判断SdCard是否存在并且是可用的
if (android.os.Environment.MEDIA_MOUNTED.equals(state)) {
if (android.os.Environment.getExternalStorageDirectory().canWrite()) {
return android.os.Environment.getExternalStorageDirectory().getPath();
}
}
return null;
}
/**
* 获取存储卡的剩余容量,单位为字节
* @param filePath
* @return availableSpare
*/
public static long getAvailableStore(String filePath) {
// 取得sdcard文件路径
StatFs statFs = new StatFs(filePath);
// 获取block的SIZE
long blocSize = statFs.getBlockSize();
// 获取BLOCK数量
long totalBlocks = statFs.getBlockCount();
// 可使用的Block的数量
long availaBlock = statFs.getAvailableBlocks();
long total = totalBlocks * blocSize;
long availableSpare = availaBlock * blocSize;
return availableSpare;
}