我的同学所写的一个有关滚动菜单的方法(J2ME)最早应用在了他的游戏中,我没有试用过,等待研究!
/** */
/**
* 帮助信息显示
* */
public void showhelp(Graphics g) ... {
try ...{
setnull();
buystatus.setPosition( (getWidth() - buystatus.getWidth()) / 2,
(getHeight() - buystatus.getHeight()) / 2);
mark.setFrame(2);
mark.setPosition(3, getHeight() - 35);
layermanager.insert(buystatus, 0);
layermanager.insert(mark, 1);
layermanager.setViewWindow(0, 0, getWidth(), getHeight());
layermanager.paint(g, 0, 0);
}
catch (Exception e) ...{
e.printStackTrace();
System.out.println("help 画面错误");
}
drawstring2(g, 0xff0000, 0xffffff, -2, "-------帮助-------",
(getWidth() - buystatus.getWidth()) / 2 + 30,
(getHeight() - buystatus.getHeight()) / 2 + 20 + 0 * 20);
drawstring2(g, 0xff0000, 0xffffff, -2, "--按上下键翻页--",
(getWidth() - buystatus.getWidth()) / 2 + 30,
(getHeight() - buystatus.getHeight()) / 2 + 180 + 0 * 20);
for (int i = 0; i <= variable.helpstring.length() / 10; i++) ...{
if ( (i + 1) * 10 < variable.helpstring.length()) ...{
helpy = 20 * i + (getHeight() - buystatus.getHeight()) / 2 + 40;
if ( (helpy + helpminy) <= 210 && (helpy + helpminy) >= 90) ...{
drawstring2(g, 0x000000, 0xffffff, -2,
variable.helpstring.substring(i * 10, (i + 1) * 10), 50,
helpy + helpminy); //90碍事---210
}
}
else ...{
helpy = 20 * i + (getHeight() - buystatus.getHeight()) / 2 + 40;
if ( (helpy + helpminy) <= 210 && (helpy + helpminy) >= 90) ...{
drawstring2(g, 0x000000, 0xffffff, -2,
variable.helpstring.substring(i * 10,
variable.helpstring.length()),
50, helpy + helpminy);
//helpy--;
}
}
}
flushGraphics();
}
* 帮助信息显示
* */
public void showhelp(Graphics g) ... {
try ...{
setnull();
buystatus.setPosition( (getWidth() - buystatus.getWidth()) / 2,
(getHeight() - buystatus.getHeight()) / 2);
mark.setFrame(2);
mark.setPosition(3, getHeight() - 35);
layermanager.insert(buystatus, 0);
layermanager.insert(mark, 1);
layermanager.setViewWindow(0, 0, getWidth(), getHeight());
layermanager.paint(g, 0, 0);
}
catch (Exception e) ...{
e.printStackTrace();
System.out.println("help 画面错误");
}
drawstring2(g, 0xff0000, 0xffffff, -2, "-------帮助-------",
(getWidth() - buystatus.getWidth()) / 2 + 30,
(getHeight() - buystatus.getHeight()) / 2 + 20 + 0 * 20);
drawstring2(g, 0xff0000, 0xffffff, -2, "--按上下键翻页--",
(getWidth() - buystatus.getWidth()) / 2 + 30,
(getHeight() - buystatus.getHeight()) / 2 + 180 + 0 * 20);
for (int i = 0; i <= variable.helpstring.length() / 10; i++) ...{
if ( (i + 1) * 10 < variable.helpstring.length()) ...{
helpy = 20 * i + (getHeight() - buystatus.getHeight()) / 2 + 40;
if ( (helpy + helpminy) <= 210 && (helpy + helpminy) >= 90) ...{
drawstring2(g, 0x000000, 0xffffff, -2,
variable.helpstring.substring(i * 10, (i + 1) * 10), 50,
helpy + helpminy); //90碍事---210
}
}
else ...{
helpy = 20 * i + (getHeight() - buystatus.getHeight()) / 2 + 40;
if ( (helpy + helpminy) <= 210 && (helpy + helpminy) >= 90) ...{
drawstring2(g, 0x000000, 0xffffff, -2,
variable.helpstring.substring(i * 10,
variable.helpstring.length()),
50, helpy + helpminy);
//helpy--;
}
}
}
flushGraphics();
}