{"id":10391,"date":"2015-08-28T00:51:11","date_gmt":"2015-08-28T04:51:11","guid":{"rendered":"http:\/\/bangla.salearningschool.com\/?p=10391"},"modified":"2015-08-24T09:58:26","modified_gmt":"2015-08-24T13:58:26","slug":"a-textfield-that-uses-key-events-to-correct-the-spelling-of-the-names-of-computer-languages-entered-into-it","status":"publish","type":"post","link":"http:\/\/bangla.sitestree.com\/?p=10391","title":{"rendered":"A TextField that uses key events to correct the spelling of the names of computer languages entered into it"},"content":{"rendered":"<pre>import java.awt.*;\r\nimport java.awt.event.*;\r\n\r\n\/** A spelling-correcting TextField for entering\r\n\u00a0*\u00a0 a language name.\r\n\u00a0* \u00a0\r\n\r\n\r\n\u00a0*******************\r\n\r\npublic class LanguageField extends TextField {\r\n\u00a0 private String[] substrings =\r\n\u00a0\u00a0\u00a0 { \"\", \"J\", \"Ja\", \"Jav\", \"Java\" };\r\n\r\n\u00a0 public LanguageField() {\r\n\u00a0\u00a0\u00a0 addKeyListener(new SpellingCorrector());\r\n\u00a0\u00a0\u00a0 addActionListener(new WordCompleter());\r\n\u00a0\u00a0\u00a0 addFocusListener(new SubliminalAdvertiser());\r\n\u00a0 }\r\n\r\n\u00a0 \/\/ Put caret at end of field.\r\n\u00a0 \r\n\u00a0 private void setCaret() {\r\n\u00a0\u00a0\u00a0 setCaretPosition(5);\r\n\u00a0 }\r\n\u00a0 \r\n\u00a0 \/\/ Listener to monitor\/correct spelling as user types.\r\n\u00a0 \r\n\u00a0 private class SpellingCorrector extends KeyAdapter {\r\n\u00a0\u00a0\u00a0 public void keyTyped(KeyEvent event) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 setLanguage();\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 setCaret();\r\n\u00a0\u00a0\u00a0 }\r\n\r\n\u00a0\u00a0\u00a0 \/\/ Enter partial name of good programming language that\r\n\u00a0\u00a0\u00a0 \/\/ most closely matches what they've typed so far.\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0 private void setLanguage() {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 int length = getText().length();\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 if (length &lt;= 4) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 setText(substrings[length]);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 } else {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 setText(\"Java\");\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 }\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 setCaret();\r\n\u00a0\u00a0\u00a0 }\r\n\u00a0 }\r\n\r\n\u00a0 \/\/ Listener to replace current partial name with\r\n\u00a0 \/\/ most closely-matching name of good language.\r\n\u00a0 \r\n\u00a0 private class WordCompleter implements ActionListener {\r\n\r\n\u00a0\u00a0\u00a0 \/\/ When they hit RETURN, fill in the right answer.\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0 public void actionPerformed(ActionEvent event) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 setText(\"Java\");\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 setCaret();\r\n\u00a0\u00a0\u00a0 }\r\n\u00a0 }\r\n\r\n\u00a0 \/\/ Listener to give the user a hint.\r\n\u00a0 \r\n\u00a0 private class SubliminalAdvertiser extends FocusAdapter {\r\n\u00a0\u00a0\u00a0 public void focusGained(FocusEvent event) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 String text = getText();\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 for(int i=0; i&lt;10; i++) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 setText(\"Hint: Java\");\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 setText(text);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0 }\r\n\u00a0\u00a0\u00a0 }\r\n\u00a0 }\r\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>import java.awt.*; import java.awt.event.*; \/** A spelling-correcting TextField for entering \u00a0*\u00a0 a language name. \u00a0* \u00a0 \u00a0******************* public class LanguageField extends TextField { \u00a0 private String[] substrings = \u00a0\u00a0\u00a0 { &#8220;&#8221;, &#8220;J&#8221;, &#8220;Ja&#8221;, &#8220;Jav&#8221;, &#8220;Java&#8221; }; \u00a0 public LanguageField() { \u00a0\u00a0\u00a0 addKeyListener(new SpellingCorrector()); \u00a0\u00a0\u00a0 addActionListener(new WordCompleter()); \u00a0\u00a0\u00a0 addFocusListener(new SubliminalAdvertiser()); \u00a0 } \u00a0 \/\/ Put caret &hellip; <\/p>\n<p><a class=\"more-link btn\" href=\"http:\/\/bangla.sitestree.com\/?p=10391\">Continue reading<\/a><\/p>\n","protected":false},"author":130,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1417,1424],"tags":[706,308,285],"class_list":["post-10391","post","type-post","status-publish","format-standard","hentry","category-code-programming-samples--","category-javaj2eej2me","tag-code","tag-java","tag-285","item-wrap"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":26773,"url":"http:\/\/bangla.sitestree.com\/?p=26773","url_meta":{"origin":10391,"position":0},"title":"A TextField that uses key events to correct the spelling of the names of computer languages entered into it #Programming Code Examples #Java\/J2EE\/J2ME #Mouse and Keyboard Events","author":"Author-Check- Article-or-Video","date":"May 1, 2021","format":false,"excerpt":"import java.awt.*; import java.awt.event.*; \/** A spelling-correcting TextField for entering * a language name. * ******************* public class LanguageField extends TextField { private String[] substrings = { \"\", \"J\", \"Ja\", \"Jav\", \"Java\" }; public LanguageField() { addKeyListener(new SpellingCorrector()); addActionListener(new WordCompleter()); addFocusListener(new SubliminalAdvertiser()); } \/\/ Put caret at end of field.\u2026","rel":"","context":"In &quot;FromSitesTree.com&quot;","block_context":{"text":"FromSitesTree.com","link":"http:\/\/bangla.sitestree.com\/?cat=1917"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27223,"url":"http:\/\/bangla.sitestree.com\/?p=27223","url_meta":{"origin":10391,"position":1},"title":"ListEvent2.java #Programming Code Examples #Java\/J2EE\/J2ME #Advanced Swing","author":"Author-Check- Article-or-Video","date":"May 14, 2021","format":false,"excerpt":"# ListEvents.java Uses the following classes: * CloseableFrame.java * SelectionReporter.java * ActionReporter.java \/.\/.\/.\/.\/.\/.\/.\/.\/.\/.\/.\/.\/ import java.awt.event.*; \/.\/.\/.\/.\/.\/.\/ public class ListEvents2 extends ListEvents { public static void main(String[] args) { new ListEvents2(); } \/** Extends ListEvents with the twist that * typing any of the letters of \"JAVA\" or \"java\" * over\u2026","rel":"","context":"In &quot;FromSitesTree.com&quot;","block_context":{"text":"FromSitesTree.com","link":"http:\/\/bangla.sitestree.com\/?cat=1917"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":10359,"url":"http:\/\/bangla.sitestree.com\/?p=10359","url_meta":{"origin":10391,"position":2},"title":"TextFields","author":"","date":"August 27, 2015","format":false,"excerpt":"import java.applet.Applet; import java.awt.*; \/** A TextField from each of the four constructors. \u00a0* \u00a0********************* public class TextFields extends Applet { \u00a0 public void init() { \u00a0\u00a0\u00a0 add(new TextField()); \u00a0\u00a0\u00a0 add(new TextField(30)); \u00a0\u00a0\u00a0 add(new TextField(\"Initial String\")); \u00a0\u00a0\u00a0 add(new TextField(\"Initial\", 30)); \u00a0 } }","rel":"","context":"In &quot;Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8&quot;","block_context":{"text":"Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8","link":"http:\/\/bangla.sitestree.com\/?cat=1417"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":10313,"url":"http:\/\/bangla.sitestree.com\/?p=10313","url_meta":{"origin":10391,"position":3},"title":"A textfield and three buttons arranged by a verticle BoxLayout","author":"","date":"August 26, 2015","format":false,"excerpt":"BoxLayoutTest.java A textfield and three buttons arranged by a verticle BoxLayout. Uses WindowUtilities.java and ExitListener.java. ################## import java.awt.*; import java.awt.event.*; import javax.swing.*; \/** An example of BoxLayout. \u00a0* \u00a0*********** public class BoxLayoutTest extends JPanel \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 implements ActionListener{ \u00a0 BoxLayout layout; \u00a0 JButton topButton, middleButton, bottomButton; \u00a0 public BoxLayoutTest() { \u00a0\u00a0\u00a0\u2026","rel":"","context":"In &quot;Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8&quot;","block_context":{"text":"Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8","link":"http:\/\/bangla.sitestree.com\/?cat=1417"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27056,"url":"http:\/\/bangla.sitestree.com\/?p=27056","url_meta":{"origin":10391,"position":4},"title":"Custom AWT Slider #Programming Code Examples #Java\/J2EE\/J2ME #AWT Components","author":"Author-Check- Article-or-Video","date":"May 9, 2021","format":false,"excerpt":"***************** Custom AWT Slider * LabeledCostSlider.java. A numeric slider class with attached label. * CostSlider.java. A slider class that lets you read numeric values. Used in the LabeledCostSlider class. * Slider.java. A slider class: a combination of Scrollbar and TextField. Used in the CostSlider class. * ScrollbarPanel.java A Panel with\u2026","rel":"","context":"In &quot;FromSitesTree.com&quot;","block_context":{"text":"FromSitesTree.com","link":"http:\/\/bangla.sitestree.com\/?cat=1917"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":10419,"url":"http:\/\/bangla.sitestree.com\/?p=10419","url_meta":{"origin":10391,"position":5},"title":"An applet that searches multiple search engines, displaying the results in side-by-side frame cells.","author":"","date":"August 28, 2015","format":false,"excerpt":"Using Applets as Front Ends to Server-Side Programs ************************************************** SearchApplet.java An applet that searches multiple search engines, \u00a0displaying the results in side-by-side frame cells. Uses the following files: SearchSpec.javaParallelSearches.htmlSearchAppletFrame.htmlGoogleResultsFrame.htmlInfoseekResultsFrame.htmlLycosResultsFrame.html *************************************************** \/\/ import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.net.*; \/\/ \/** An applet that reads a value from a TextField,\u2026","rel":"","context":"In &quot;Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8&quot;","block_context":{"text":"Code . Programming Samples . \u09aa\u09cd\u09b0\u09cb\u0997\u09cd\u09b0\u09be\u09ae \u0989\u09a6\u09be\u09b9\u09b0\u09a8","link":"http:\/\/bangla.sitestree.com\/?cat=1417"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/posts\/10391","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/users\/130"}],"replies":[{"embeddable":true,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10391"}],"version-history":[{"count":1,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/posts\/10391\/revisions"}],"predecessor-version":[{"id":10392,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=\/wp\/v2\/posts\/10391\/revisions\/10392"}],"wp:attachment":[{"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10391"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10391"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/bangla.sitestree.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10391"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}