I have most of the swing app designed, however, I am having difficulties getting
ID: 3839293 • Letter: I
Question
I have most of the swing app designed, however, I am having difficulties getting it to the specs. My portion of the swing app is located below the image. Thank you, for your assitance.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.*;
public class AsciiConversion {
public static void main(String[] args) {
SwingApp app = new SwingApp(250, 150); // set app window size
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class SwingApp extends JFrame //"extends"
{
private final JTextField textField1, textField2; //text fields for input
private final DrawPanel panel, panel2; // class variable
public SwingApp(int width, int height) // class constructor
{
super(); // call to super class constructor
Container pane = super.getContentPane(); // create layout, set colors
panel = new DrawPanel(); // add GUI components
panel2 = new DrawPanel(); // add GUI components
// panel.setBackground(Color.white); // set the color yellow as the background
panel.setLayout(new BorderLayout());
panel2.setLayout(new BorderLayout());
/*Panel p = new Panel();
p.setLayout(new BorderLayout()); EXAMPLE FOR BORDER LAYOUT
p.add(new Button("Okay"), BorderLayout.SOUTH);*/
//------------------------- add other GUI components to the panel-----------------------------
JPanel jp1 = new JPanel(new BorderLayout());
jp1.add(new JLabel("Character: "), BorderLayout.CENTER);
textField1 = new JTextField(3); //SETS THE SIZE OF THE TEXT FIELD
// JPanel jp3 takes the label "power: " and the corresp. input field
JPanel jp2 = new JPanel(new BorderLayout());
jp2.add(new JLabel("ASCII code: "), BorderLayout.WEST);
textField2 = new JTextField(3); //SETS THE SIZE OF THE TEXT FIELD
//jp2.add(textField2);
jp2.add(textField2);
JPanel jp3 = new JPanel(new FlowLayout(FlowLayout.CENTER));
JPanel jp4 = new JPanel(new FlowLayout(FlowLayout.RIGHT));
panel.add(jp1); // add the created panels to the grid layout manager
panel.add(jp2);
panel.add(jp2);
panel.add(jp3);
panel.add(jp4);
panel.add(pane); // add panel to the main app container
Toolkit toolkit = Toolkit.getDefaultToolkit(); // optionally position JFrame
Dimension screenSize = toolkit.getScreenSize(); // puts the popup in the middle of the screen
super.setLocation((screenSize.width - width) / 2, (screenSize.height - height) / 2);
super.setTitle("ASCII CONVERSION"); // set desired window title
super.setSize(width, height); // set desired window size
super.setVisible(true); // make the app window visible
//----------------------------ASCII CODE CONVERSION-----------------------------
}
public static String asciiToStringValue(char digit) {
switch (digit) { //converts from ascii character to string value
case ' ':
return "32";
case '!':
return "33";
case '"':
return "34";
case '#':
return "35";
case '$':
return "36";
case '%':
return "37";
case '&':
return "38";
//case '''': //NEED TO GET THE ' TO GO INTO THE BRACKETS
//return "39";
case '(':
return "40";
case ')':
return "41";
case '*':
return "42";
case '+':
return "43";
case ',':
return "44";
case '-':
return "45";
case '.':
return "46";
case '/':
return "47";
case '0':
return "48";
case '1':
return "49";
case '2':
return "50";
case '3':
return "51";
case '4':
return "52";
case '5':
return "53";
case '6':
return "54";
case '7':
return "55";
case '8':
return "56";
case '9':
return "57";
case ':':
return "58";
case ';':
return "59";
case '<':
return "60";
case '=':
return "61";
case '>':
return "62";
case '?':
return "63";
case '@':
return "64";
case 'A':
return "65";
case 'B':
return "66";
case 'C':
return "67";
case 'D':
return "68";
case 'E':
return "69";
case 'F':
return "70";
case 'G':
return "71";
case 'H':
return "72";
case 'I':
return "73";
case 'J':
return "74";
case 'K':
return "75";
case 'L':
return "76";
case 'M':
return "77";
case 'N':
return "78";
case 'O':
return "79";
case 'P':
return "80";
case 'Q':
return "81";
case 'R':
return "82";
case 'S':
return "83";
case 'T':
return "84";
case 'U':
return "85";
case 'V':
return "86";
case 'W':
return "87";
case 'X':
return "88";
case 'Y':
return "89";
case 'Z':
return "90";
case '[':
return "91";
case ''': //
return "92";
case ']':
return "93";
case '^':
return "94";
case '_':
return "95";
case '`':
return "96";
case 'a':
return "97";
case 'b':
return "98";
case 'c':
return "99";
case 'd':
return "100";
case 'e':
return "101";
case 'f':
return "102";
case 'g':
return "103";
case 'h':
return "104";
case 'i':
return "105";
case 'j':
return "106";
case 'k':
return "107";
case 'l':
return "108";
case 'm':
return "109";
case 'n':
return "110";
case 'o':
return "111";
case 'p':
return "112";
case 'q':
return "113";
case 'r':
return "114";
case 's':
return "115";
case 't':
return "116";
case 'u':
return "117";
case 'v':
return "118";
case 'w':
return "119";
case 'x':
return "120";
case 'y':
return "121";
case 'z':
return "122";
case '{':
return "123";
case '}':
return "124";
case '|':
return "125";
case '~':
return "126";
default:
return "";
}
}
public static char stringToAscii(String digit) {
switch (digit) { //converts the string equivalent to ascii code charcter
case "32":
return ' ';
case "33": //example: user enters 33 and returns the character 2
return '!';
case "34":
return '"';
case "35":
return '#';
case "36":
return '$';
case "37":
return '%';
case "38":
return '&';
//case "39": //uncased litteral, research how to make it compile
// return ';
case "40":
return '(';
case "41":
return ')';
case "42":
return '*';
case "43":
return '+';
case "44":
return ',';
case "45":
return '-';
case "46":
return '.';
case "47":
return '/';
case "48":
return '0';
case "49":
return '1';
case "50":
return '2';
case "51":
return '3';
case "52":
return '4';
case "53":
return '5';
case "54":
return '6';
case "55":
return '7';
case "56":
return '8';
case "57":
return '9';
case "58":
return ':';
case "59":
return ';';
case "60":
return '<';
case "61":
return '=';
case "62":
return '>';
case "63":
return '?';
case "64":
return '@';
case "65":
return 'A';
case "66":
return 'B';
case "67":
return 'C';
case "68":
return 'D';
case "69":
return 'E';
case "70":
return 'F';
case "71":
return 'G';
case "72":
return 'H';
case "73":
return 'I';
case "74":
return 'J';
case "75":
return 'K';
case "76":
return 'L';
case "77":
return 'M';
case "78":
return 'N';
case "79":
return 'O';
case "80":
return 'P';
case "81":
return 'Q';
case "82":
return 'R';
case "83":
return 'S';
case "84":
return 'T';
case "85":
return 'U';
case "86":
return 'V';
case "87":
return 'W';
case "88":
return 'X';
case "89":
return 'Y';
case "90":
return 'Z';
case "91":
return '[';
case "92":
return ''';
case "93":
return ']';
case "94":
return '^';
case "95":
return '_';
case "96":
return '`';
case "97":
return 'a';
case "98":
return 'b';
case "99":
return 'c';
case "100":
return 'd';
case "101":
return 'e';
case "102":
return 'f';
case "103":
return 'g';
case "104":
return 'h';
case "105":
return 'i';
case "106":
return 'j';
case "107":
return 'k';
case "108":
return 'l';
case "109":
return 'm';
case "110":
return 'n';
case "111":
return 'o';
case "112":
return 'p';
case "113":
return 'q';
case "114":
return 'r';
case "115":
return 's';
case "116":
return 't';
case "117":
return 'u';
case "118":
return 'v';
case "119":
return 'w';
case "120":
return 'x';
case "121":
return 'y';
case "122":
return 'z';
case "123":
return '{';
case "124":
return '|';
case "125":
return '}';
case "126":
return '~';
default:
return '0';
}
}
}
class DrawPanel extends JPanel // main window panel
{
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g); // must be the 1st line
//----------------- add here other code for drawing on panel-----------------------------
}
}
Explanation / Answer
g.DrawPanel.setBackground(color.orange);
g.Panel.setBackground(color.green);
g.panel2.setBackground(color.range);
g.drawString("Char <> ASCII converter", 20, 20);
g= new panel.jframe(“Character ASCII code”);
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.