how do i call on a class with (graphics g)

im trying to create the game mastermind and in my version, i split the many parts of my code into separate classes so it would be a
little easier to work with, several of my classes use g.drawstring for animation and positioning purposes,(got the idea from c++ gotoxy) but when i try to call some of these classes it gives me an (java.awt.Graphics) can not be applied to () error. what should i do?.

below is the mainmenu class i am trying to call and the mastermind class that is calling it.


import java.awt.Graphics;
import javax.swing.*;
import java.awt.*;

public class mainmenu
public void mainmenu(Graphics g)

int Position=0;int row=0;

for(row=30;row>=0 ;row=row-1)
for( Position=20;Position>=0;Position=Position-57)
{ g.drawString("*********************************************************",row+0,0);



import java.awt.Graphics;
import java.util.Scanner;
import javax.swing.*;
import java.awt.*;
import java.util.Random;

public class MASTERMIND {

public static void mastermind ( String [] args){
Scanner reader = new Scanner(;

/* like i said there are alot of parts to it */

starter s = new starter();
mainmenu m = new mainmenu();
window w = new window();
endscreen e = new endscreen();
endscreen2 q = new endscreen2();
easy x = new easy();
Easy_game_instructions k = new Easy_game_instructions();
Hard_game_instructions h = new Hard_game_instructions();
endcreditz p = new endcreditz();
instructionscreen i = new instructionscreen();
winningscreen b = new winningscreen();
easy_game y = new easy_game();
hard_game u = new hard_game();
quitpfz a = new quitpfz();

int userselection=0;


while ((userselection!=5))
m.mainmenu(); /*<=< THIS IS WHERE THE ERROR IS */

case 1:i.instructionscreen();break;
case 2:y.easy_game();break;
case 3:u.hard_game();break;
case 4:p.endcreditz();break;
case 5:b.winningscreen();



~~~~~~ any help would be greatly appreciated, thank you ~~~~~~~


  • huh,great job. thanks
  • Hey,
    You have outlined an ambitious endeavor. My recommendations are not use the draw functions because their information is not preserved when a window component is automatically redrawn by the "system".

    I altered your program to show a simple window frame. However the program is not meant to be a template. GUI programming is pretty involved.

    My personal suggestion is to view a [link=]TicTacToe program [/link](click on the link) that could provide many insights. I tried the version in the second post, it looked good just need to fix 1 line: public [color=Red]cl*** [/color]TicTacToe implements ActionListener {
    needs to be: public [color=Red]class[/color] TicTacToe implements ActionListener {

    A modified version of your original program is attached for download.

    regards, se52
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!