我已经思考了一段时间,但我无法弄明白如何让课程显示出几手牌。
我是java和i类的新手。
我也附上了我的故事板图片。
你能告诉我我班上应该有哪些方法吗?你能解释我应该如何更新这些方法吗?目前这就是我所拥有的:
class ScoreTable {
String title = "Hands";
color GREY = color(222); // grey for background
color boxColor = color(222); // grey
//int handNo;
int boxW =80;
int boxH =80;
int gap = 10;
int[] handNoText = new int[11];
ScoreTable() {
int k = 1;
for (int i = 0; i < handNoText.length; i++){
handNoText[i] = k++;
}
}
void showScores(){
fill(255);
// top window
rect(1,1,999,250);
fill(0);
textSize(32);
textAlign(CENTER);
text("HANDS", width/2, 50);
// Text for Hands numbers ###########################################################
textSize(14);
text(handNoText[0], (boxW/2), 80);
text(handNoText[1], (1*gap+1*boxW+(boxW/2)), 80);
text(handNoText[2], (2*gap+2*boxW+(boxW/2)), 80);
text(handNoText[3], (3*gap+3*boxW+(boxW/2)), 80);
text(handNoText[4], (4*gap+4*boxW+(boxW/2)), 80);
text(handNoText[5], (5*gap+5*boxW+(boxW/2)), 80);
text(handNoText[6], (6*gap+6*boxW+(boxW/2)), 80);
text(handNoText[7], (7*gap+7*boxW+(boxW/2)), 80);
text(handNoText[8], (8*gap+8*boxW+(boxW/2)), 80);
text(handNoText[9], (9*gap+9*boxW+(boxW/2)), 80);
text(handNoText[10], (10*gap+10*boxW+(boxW/2)), 80);
textSize(20);
text("You", width/2-50, 210);
text("Dealer", width/2+50, 210);
text("2", width/2-50, 240);
text("4", width/2+50, 240);
fill(GREY);
fill(boxColor);
// HAND 1 ###########################################################
rect(gap,100,boxW,boxH);
fill(GREY);
// HAND 2 ###########################################################
rect((gap+boxW+gap),100, boxW,boxH);
// HAND 3 ###########################################################
rect((gap+(2*boxW)+2*gap),100, boxW,boxH);
// HAND 4 ###########################################################
rect((gap+(3*boxW)+3*gap),100, boxW,boxH);
// HAND 5 ###########################################################
rect((gap+(4*boxW)+4*gap),100, boxW,boxH);
// HAND 6 ###########################################################
rect((gap+(5*boxW)+5*gap),100, boxW,boxH);
// HAND 7 ###########################################################
rect((gap+(6*boxW)+6*gap),100, boxW,boxH);
// HAND 8 ###########################################################
rect((gap+(7*boxW)+7*gap),100, boxW,boxH);
// HAND 9 ###########################################################
rect((gap+(8*boxW)+8*gap),100, boxW,boxH);
// HAND 10 ###########################################################
rect((gap+(9*boxW)+9*gap),100, boxW,boxH);
// HAND 11 ###########################################################
rect((gap+(10*boxW)+10*gap),100, boxW,boxH);
//###################################################################
}
void setBoxColor(color newBoxColor) {
boxColor = newBoxColor;
}
}
答案 0 :(得分:1)
据我记得处理有一个主循环,我们应该在画布上画画。如果你有一个课程应该在屏幕上显示一些东西,就像你有的那样。我会把它制成两个部分:
class ScoreTable {
//members that holds the score of each round
ScoreTable(...){
//construct the table
}
void setScore(int round,int you,int computer){
//update members
}
void draw(){
//take the data and draw it on the screen
//you should call it inside your main drawing loop
}
}