Results 1 to 6 of 6

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User Horus92's Avatar
    Join Date: May:2007
    Location: Ñîôèÿ
    Posts: 501

    Ìàëêî ïîìîù çà CheckBox è Java

    Çäðàâåéòå. Êàêòî ìíîãî äðóãè è àç ñå îáðúùàì çà ïîìîù êúì âàñ. Òðÿáâà äà íàïðàâÿ åäíà ïðîãðàìà, êîÿòî âêëþ÷âà ñúçäàâàíåòî íà ãðàôè÷åí èíòåðôåéñ. Ïðîáëåìúò ìè å ñâúðçàí ñ âðúçêàòà ìåæäó äâå ôîðìè. Âñÿêà ôîðìà ìè å îòäåëåí êëàñ.  åäíàòà ôîðìà èìàì 4 Checkbox-a. Òðÿáâà ïî íÿêàêúâ íà÷èí äà ïðåäàì èíôîðìàöèÿòà íà ñëåäâàùàòà ôîðìà êîè ñà èçáðàíè ïîíåæå òàì èìàì Label, â êîéòî ñå èçîáðàçÿâà îïðåäåëåíà êàðòèíêà â çàâèñèìîñò îò èçáðàíèòå áîêñîâå. Èäåÿòà ìè áåøå â ïúðâàòà ôîðìà äà èìàì åäèí String selected, êîéòî äà áúäå ïðîìåíÿí â ìåòîä. Ìåòîäúò ïðîâåðÿâà ñúñòîÿíèåòî íà áîêñîâåòå åäèí ïî åäèí è àêî ñà èçáðàíè äîáàâÿ ïî åäíà áóêâà â ñòðèíãà. Ïîñëå ìåòîäúò âðúùà ñòðèíãà.  âòîðàòà ôîðìà êúäåòî ìè å íóæíà èíôîðìàöèÿòà ñúçäàâàì îáåêò îò òèï ïúðâàòà ôîðìà è âèêàì ìåòîäà, çà äà ìè ïðåíåñå ñòðèíãà. Ïðèñâîÿâàì ãî íà íîâ ñòðèíã è ãî ïîäàâàì íà Icon îáåêò, êîéòî äà ñè èçâëå÷å íóæíàòà êàðòèíêà. Ïðîáëåìúò ìè å, ÷å ìåòîäúò âúîáùå íå äîáàâÿ íèêàêâè áóêâè â ïúðâîíà÷àëíèÿò ñòðèã selected è ñúîòâåòíî íèêàêâà êàðòèíêà íå ñå èçâëè÷à. Åòî êîäà êàòî ñúì ìàõíàë íåíóæíèòå íåùà.

    public class ElipseStadium extends JFrame{

    ...
    private JCheckBox A = new JCheckBox("A");
    private JCheckBox B = new JCheckBox("B");
    private JCheckBox C = new JCheckBox("C");
    private JCheckBox D = new JCheckBox("D");
    ...


    String selected="";

    public ElipseStadium(){

    ...
    elDown.add(sectorLabel);
    elDown.add(A);
    elDown.add(B);
    elDown.add(C);
    elDown.add(D);
    ...



    }

    public class SeatChoiceEl implements ActionListener{

    @Override
    public void actionPerformed(ActionEvent e) {
    elipseStadium.setVisible(false);
    ChooseSeatEl newChooseSeatEl = new ChooseSeatEl();
    newChooseSeatEl.launchFrame();
    }

    }

    public String checkBoxes(){

    if(A.isSelected()==true) {
    selected+="A";
    }
    if(B.isSelected()==true) {
    selected+="B";
    }
    if(C.isSelected()==true) {
    selected+="C";
    }
    if(D.isSelected()==true) {
    selected+="D";
    }
    return selected;
    }

    }

    è âòîðàòà ôîðìà

    public class ChooseSeatEl extends JFrame{

    ElipseStadium checkBoxString = new ElipseStadium();
    String ch=checkBoxString.checkBoxes();
    Icon selectedSectors = new ImageIcon("C:\\Users\\Antonio\\Documents \\NetBeansProjects\\Stadium\\src\\Sector Config\\"+ch+".jpg");
    private JLabel chosenSectors = new JLabel(selectedSectors);
    ...


    public ChooseSeatEl(){

    .....
    mainChooseSeatJPanel.add(pictureOfSector );
    pictureOfSector.add(chosenSectors);
    chosenSectors.setAlignmentX(CENTER_ALIGN MENT);

    ....


    }
    public void launchFrame(){
    seatChoice.setDefaultCloseOperation(JFra me.EXIT_ON_CLOSE);
    seatChoice.setVisible(true);
    }

    }

    Áëàãîäàðÿ âè ïðåäâàðèòåëíî.

  2. #2
    Registered User hateras's Avatar
    Join Date: Jan:2011
    Location: Kronos III
    Posts: 1,028
    ElipseStadium checkBoxString = new ElipseStadium();
    String ch=checkBoxString.checkBoxes();

    Ïðàâèø íîâ îáåêò è âåäíàãà ìó ïðîâåðÿâàø ÷åêáîêñîâåòå? Õèòðî...

    Àêî ïðàâèëíî ñúì ðàçáðàë, îò ôîðìàòà ñ checkbox-îâåòå ïîêàçâàø ôîðìàòà â êîÿòî ðèñóâàø?
    Åäíî ðåøåíèå å äà äîáàâèø íà ðèñóâàùàòà ôîðìà 4 public boolean ïðîìåíëèâè è ïðåäè äà ÿ ïîêàæåø äà ãè ïîïúëâàø ñïîðåä checkbox-îâåòå:
    Code:
    public class Form2 extends JFrame {
      public boolean cb1;
      public boolean cb2;
      public boolean cb3;
      public boolean cb4;
    ..............................
    }
    
    public class Form1 extends JFrame {
    ............................
    
    private void drawIcon{
       Form2 frm2 = new Form2();
       frm2.cb1 = checkbox1.isSelected();
       frm2.cb2 = checkbox2.isSelected();
       frm2.cb3 = checkbox3.isSelected();
       frm2.cb4 = checkbox4.isSelected();
       //ïîêàçâàø frm2 è ðèñóâàø
    }
    }
    ASRock B550M Pro 4; Ryzen R5 3600; 2x16 GiB G.SKILL Aegis 3200; 1TB Samsung QVO 960 + 3TB Seagate IronWolf; Zalman Z1

  3. #3
    Registered User Horus92's Avatar
    Join Date: May:2007
    Location: Ñîôèÿ
    Posts: 501
    Ùå îáÿñíè ñ ïðèìåð, ÷å íåùî íå ñúì ñå èçðàçèë ïðàâèëíî.  ïúðâàòà ôîðìà èìà ÷åêáîêñîâå A B C D, êàòî â çàâèñèìîñò êîè îò òÿõ ñà ÷åêíàòè ìè ñå ïîÿâÿâà ðàçëè÷íà êàðòèíêà â äðóãàòà ôîðìà. Çà äà ïðåìèíà â íîâàòà ôîðìà ïðåäè òîâà öúêàì åäèí áóòîí. Êàðòèíêèòå ñà ñ èìåíà êîìáèíàöèè îò òåçè ÷åòèðè áóêâè. Èäåÿòà ìè áåøå íàïðèìåð ÷åêâàì À B D, êîåòî äà ïðèñâîè íà selected òåçè 3 áóêâè è äà ñòàíå selected="ABD". A ìåòîäúò checkBoxes() (íå å ïîäõîäÿùî èìåòî) âðúùà òîçè ñòðèíã. Ïîñëå â äðóãèÿò êëàñ ñúçäàâàì îáåêò îò òèï ïúðâèÿ êëàñ è âèêàì ìåòîäà checkBoxes() êàòî ìèñëåõ, ÷å òîâà ùå ïðåíåñå ñòîéíîñòòà íà selected.
    ElipseStadium checkBoxString = new ElipseStadium();
    String ch=checkBoxString.checkBoxes();

    Ïîñëå ñè ïðàâÿ Icon, â êîéòî óêàçâàì ïúòÿ äî êàðòèíêàòà, êîéòî ñå ôîðìèðà îò äâà ñòðèíãà è ìåæäó òÿõ ñòîéíîñòòà íà selected, êîÿòî òðÿáâàøå äà å ïðåíåñåíà âå÷å â ñòðèíãà ch.
    Icon selectedSectors = new ImageIcon("C:\\Users\\Antonio\\Documents \\NetBeansProjects\\Stadium\\src\\Sector Config\\"+ch+".jpg");
    È íêðàÿ ñàìî ïîäàâàì Icon îáåêòà íà Label, â êîéòî äà ìè ñå ïîÿâè êàðòèíêàòà.
    Êîãàòî çàäàì èçâúí if-îâåòå íÿêàêâà ñòîéíîñò íà selected, âñè÷êî ìèíàâà, êîåòî çíà÷è, ÷å ïðîáëåìúò å â ÷åêáîêñîâåòå.

  4. #4
    åíòóñèàçèðàí õàðäóåð System.gc()'s Avatar
    Join Date: Apr:2007
    Location: back in time
    Posts: 1,075
    Íå âèæäàì â ïðèìåðà ñè ãîðå äà ñè öèòèðàë êàê/äàëè çàêà÷àø actionListener çà âñåêè îò checkbox-îâåòå. Òå, áèäåéêè áóòîíè â ñâîÿòà ñúùíîñò, ìîãàò äà dispatch-âàò event-è, êîãàòî èì ñå ïðîìåíè ñúñòîÿíèåòî, ñúîòâåòíî ìîãàò äà òè úïäåéòâàò ìîäåëà (â òâîÿ ñëó÷àé òîâà å String-îáåêòúò, êîéòî ïîëçâàø äà òè ïàçè state).
    Ïðèìåð:

    Code:
    class Form1 ... {
    ...
    checkBox1.addActionListener(actionListenerObject);
    checkBox2.addActionListener(actionListenerObject);
    ...
    
    }
    
    class ActionListenerObject implements ÊàêúâòîÒðÿáâàActionListenerInterface{
    ...
        public void actionPerformed(event) {
            if (event.source.equals(checkBox1)) {
                model.checkBox1State = checkBox1.selected;
            } else if (event.source.equals(checkBox2)) {
                model.checkBox2State = checkBox2.selected;
            } else if ...
        }
    ...
    }

    Äðóã ïðîáëåì å, ÷å íå å îñîáåíî îáåêòíî-îðèåíòèðàíî äà ïîëçâàø String êàòî ìîäåë, âìåñòî äà ñè íàïðàâèø êëàñ (ïðîñò JavaBean), êîéòî äà òè ïàçè â ÷åòèðè boolean ïîëåòà ñúñòîÿíèåòî íà checkbox-îâåòå, êîåòî ïðåäàâàø îò ôîðìà-1 êúì ôîðìà-2.
    UD3R|Q9550+1283|4x2 G.Skill@1066|MX500+1002FAEX+640AAKS+ST31 60|RX580-8GB|1841BLT|SS-760XP|Define7|z24i|Edifier S350DB
    geniusloci: ÀÌÄ ñå êóïóâà à) àêî ñè áåäåí; á) àêî ñà òå èçëúãàëè; â) àêî ñè áîëåí ôåí? nope|r.i.p.

  5. #5
    Registered User Horus92's Avatar
    Join Date: May:2007
    Location: Ñîôèÿ
    Posts: 501
    Áëàãîäàðÿ âè ìíîãî ùå ïðîáâàì êàçàíîòî.

  6. #6
    Registered User hateras's Avatar
    Join Date: Jan:2011
    Location: Kronos III
    Posts: 1,028
    ElipseStadium checkBoxString = new ElipseStadium();
    Checkbox-îâåòå ñà UNCHECKED
    Ñúçäàâàø íîâî êîïèå íà òîçè îáåêò, áåç âðúçêà ñ ôîðìàòà íà êîÿòî ñè íàöúêàë ÷åêîâåòå.
    ---------------------------
    - Ñúçäàâàø åäèí îáåêò îò òèï ElipseStadium
    - Ïðàâèø íåùî ñ ÷åêáîêñîâåòå
    - Ñúçäàâàø åäèí îáåêò îò òèï ChooseSeatEl
    - Ñúçäàâàø ÍΠîáåêò îò òèï ElipseStadium - è 4-òå ÷åêà ñà UNCHECKED

    Çà ïðîáà ïðîìåíè
    Code:
    private JCheckBox A = new JCheckBox("A", true);
    private JCheckBox B = new JCheckBox("B", true);
    private JCheckBox C = new JCheckBox("C", false);
    private JCheckBox D = new JCheckBox("D", true);
    è êàæè êàêâî ïîëó÷àâàø
    ASRock B550M Pro 4; Ryzen R5 3600; 2x16 GiB G.SKILL Aegis 3200; 1TB Samsung QVO 960 + 3TB Seagate IronWolf; Zalman Z1

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè