Java 清除StdDraw中的文本框以写入新输入
我不确定这是否是一个简单的问题,因为我使用的是普林斯顿大学编写的标准绘图课程,我不确定这是否是一个全球知名的课程 但我非常感谢那些熟悉StdDraw库的人的反馈 我想做的是相当直截了当的;检查用户的鼠标是否单击了我绘制的输入框,如果单击了,则清除现有文本(简单地说是“输入”)以生成空的Java 清除StdDraw中的文本框以写入新输入,java,class,object,stddraw,Java,Class,Object,Stddraw,我不确定这是否是一个简单的问题,因为我使用的是普林斯顿大学编写的标准绘图课程,我不确定这是否是一个全球知名的课程 但我非常感谢那些熟悉StdDraw库的人的反馈 我想做的是相当直截了当的;检查用户的鼠标是否单击了我绘制的输入框,如果单击了,则清除现有文本(简单地说是“输入”)以生成空的字符串 到目前为止,情况是这样的: public boolean handleClick(double x, double y) { if(!super.handleClick(x,y)){ value = f
字符串
到目前为止,情况是这样的:
public boolean handleClick(double x, double y) {
if(!super.handleClick(x,y)){
value = false;}
else {
if(highlighted){
value = true;
StdDraw.textLeft(xCentre+0.005,yCentre," ");} //Add the label
else{
value = false;}
}
return value; //I handled it. Nobody else should.}
}//handleClick
super.handleClick(x,y)
只是超类中绘制长方体尺寸的一个方法:
public void draw(){
StdDraw.setPenColor(StdDraw.WHITE);
StdDraw.filledRectangle(xCentre,yCentre,halfWidth,halfHeight);
StdDraw.setPenColor(StdDraw.BLACK);
StdDraw.setPenRadius(); //Default thin line.
StdDraw.rectangle(xCentre,yCentre,halfWidth,halfHeight);
}
value
只是此类的一个实例变量,如果满足所有条件,它将返回true
:
私有布尔值代码>
高亮显示的
是一个来自超类的布尔
实例变量,该变量仅说明该框是输入框还是输出框
我的主要问题是,线路是否正常
StdDraw.textlight(xCentre+0.005,yCentre,”)代码>
清除现有文本并使用StdDraw创建空字符串的正确方法?因为它没有清除这行代码,但是我的代码中可能有一个我遗漏的bug,这行代码应该可以工作吗