How to Make a Buzzer Game

Updated March 23, 2017

Many people love buzzer games like Jeopardy on TV. Did you know that creating a simple buzzer-based quiz game for your PC using Java is fairly simple, provided that you use NetBeans and the standard Swing library for your GUI and user input handling? Players can use their different keys on a single, ordinary keyboard as their buzzers, and questions can be presented through a simple game window.

Create a Java project by click "File" and "New Project." You'll want to use "Java Application" as your project template. This tutorial will assume that you use the NetBeans IDE, but most of the steps can be performed with minimum alteration using another Java IDE, such as Eclipse. Name your project "BuzzerGame."

Click on the "Design" button to go to the GUI form designer in NetBeans, and you should be presented with a small, blank window in the centre of your screen. From the palette pane on the right side of your window, drag a label into your window and place it somewhere near the centre. Right-click that label and choose "Change Variable Name." Change the variable name from "jLabel1" to "questionLabel." Click the "Source" button.

Create and initialise some variables. You'll need to store at least two variables for this program, which are the key codes on the keyboard that will represent each player's buzzer. Write the following:

int playerOneKeyCode; int playerTwoKeyCode;

Go to the BuzzerGame default constructor and, at the bottom, add the following two lines of code:

playerOneKeyCode = java.awt.KeyEvent.VK_A; playerTwoKeyCode = java.awt.KeyEvent.VK_L;

This will set player one as using the "A" key on the keyboard as his buzzer, and player two as using the "L" key. The VK stands for "Virtual Key code," and the Javadoc for KeyEvent has constants defined for every key on a standard U.S. keyboard, plus a few more.

Set up the question. There is one last line to add to the constructor.

questionLabel.setText("How many stars are on the U.S. flag?");

Set up user input. Click on the "Design" button again, and right-click anywhere on the form (but not on the label you defined earlier). Choose "Events," "Key," and "KeyPressed" from the pop-up menu. This will automatically create a skeleton function "formKeyPressed" in your source code, and take you to it. Add the following code to this skeleton function:

if (evt.getKeyCode() == playerOneKeyCode) { String answer = JOptionPane.showInputDialog("Player one, give your answer."); if (answer.equals("50")) { JOptionPane.showMessageDialog(root Pane, "Yes!"); } else { JOptionPane.showMessageDialog(root Pane, "No!"); }

} else if (evt.getKeyCode() == playerTwoKeyCode) { String answer = JOptionPane.showInputDialog("Player two, give your answer."); if (answer.equals("50")) { JOptionPane.showMessageDialog(root Pane, "Yes!"); } else { JOptionPane.showMessageDialog(root Pane, "No!");} }


This tutorial gives you the basic functionality for your buzzer game, and a number of enhancements can be made. Question could have its own class, stored in a java.util.ArrayList that is iterated through in a game loop. Score can be kept and a couple of JLabel objects placed on the form to report each player's score. Players could be asked by message dialogues to choose their own buzzer keys. Finally, a player class could be created to store multiple players, also stored in a dynamic java.util.ArrayList, potentially allowing dozens of players at once.


Notice that the program, when it compares the user's answer against the right answer, uses the code answer.equals("50"). It is very important to remember that, when comparing Java strings with the usual == operator, the strings are not compared, but rather their addresses in memory! To compare the text of the strings and not merely their memory addresses, the aString.equals(anotherString) function must be used.

Things You'll Need

  • Java
  • NetBeans IDE
bibliography-icon icon for annotation tool Cite this Article

About the Author

Amber D. Walker has been writing professionally since 1989. She has had essays published in "Fort Worth Weekly," "Starsong," "Paper Bag," "Living Buddhism" and more. Walker holds a Bachelor of Arts degree in English from the University of Texas and worked as an English teacher abroad for six years.