I need help in drowng two varibles in real time chart(LiveGraph)

hi every one
in my application i have two variables 1)patient id 2) time . that i need to draw in a realtime chart
i found a program called LiveGraph. i don't know if there is easier way for drawing charts??
here i code:
// derived from SUN's examples in the javax.comm package
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Enumeration;
import java.util.TooManyListenersException;
import java.lang.*;
import oracle.jdbc.driver.*;
import gnu.io.*; // for rxtxSerial library
public class nulltest22 implements SerialPortEventListener {
static CommPortIdentifier portId;
static CommPortIdentifier saveportId;
static Enumeration portList;
InputStream inputStream;
SerialPort serialPort;
Thread readThread;
static Connection con = null;     
static String messageString = "Hello, world!";
static OutputStream outputStream;
static boolean outputBufferEmptyFlag = false;
public static void main(String[] args)throws SQLException {
boolean portFound = false;
String defaultPort;
// determine the name of the serial port on several operating systems
String osname = System.getProperty("os.name","").toLowerCase();
if ( osname.startsWith("windows") ) {
// windows
defaultPort = "COM5";
else {
System.out.println("Sorry, your operating system is not supported");
return;
if (args.length > 0) {
defaultPort = args[0];
System.out.println("Set default port to "+defaultPort);
          // parse ports and if the default port is found, initialized the reader
try {
portId = (CommPortIdentifier)CommPortIdentifier.getPortIdentifier(defaultPort);
System.out.println("Found port: "+defaultPort);
portFound = true;
          nulltest22 reader = new nulltest22();
catch (Exception e) {
     System.out.println(e);
          if (!portFound)
               System.out.println("port " + defaultPort + " not found.");
          // close the connection
               //con.close();
     } //main end
public nulltest22 () {
     try
     try
                         DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
                    Class.forName("oracle.jdbc.driver.OracleDriver");
                    catch (ClassNotFoundException s)
                         System.out.println(s);
                    con =DriverManager.getConnection("jdbc:oracle:thin:@toshiba:1521:ora","scott","tiger");
          catch(SQLException s)
               System.out.println(s);     
// initalize serial port
try {
serialPort = (SerialPort) portId.open("SimpleReadApp", 2000);
} catch (PortInUseException e) {
          System.out.println(e);
try {
inputStream = serialPort.getInputStream();
} catch (IOException e) {
          System.out.println(e);      
try {
serialPort.addEventListener(this);
} catch (TooManyListenersException e) {
          System.out.println(e);
// activate the DATA_AVAILABLE notifier
serialPort.notifyOnDataAvailable(true);
try {
// set port parameters
serialPort.setSerialPortParams(19200, SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {}
}//end constructor
public void serialEvent(SerialPortEvent event) {
switch (event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE:
// we get here if data has been received
byte[] readBuffer = new byte[400];
try {
// read data
while (inputStream.available() > 0) {
int numBytes = inputStream.read(readBuffer);
// print data
String result = new String(readBuffer);
//checks in the incoming packet is patients info
int a = result.indexOf("77707373");
System.out.println("find wpss in index "+ a);
if (a!=-1){
int location=a;
char array[] = result.toCharArray();
//save pitent info.
String PID = new String (array,location+8,2);
String TS = new String (array,location+10, 8);
String sample = new String (array,location+18, 4);
String HeartBeat = new String (array,location+22, 4);
try {
     Statement st = con.createStatement();
     String statment = "INSERT INTO heartbeat5 VALUES('" + PID+ "' , '" + TS + "' , '" + sample + "', ' " + HeartBeat + "') ";
     System.out.println(statment);
     int val= st.executeUpdate(statment);
          } catch (SQLException ex){ }
} catch (IOException e) {}
break;
i need to drow PID and TS in the code

You might consider JFreeChart. There are multiple introductory articles on JFreeChart such as [Visualize Your Oracle Database Data with JFreeChart|http://www.oracle.com/technology/pub/articles/marx-jchart.html] and [On a New Course with JFreeChart|http://www.javaworld.com/javaworld/jw-12-2002/jw-1227-opensourceprofile.html]. The JFreeChart site lists [open source alternatives|http://www.jfree.org/jfreechart/faq.html#FAQ13] to JFreeChart.

Similar Messages

  • I need help with controlling two .swf's from third.

    Hi, thanks for reading!
    I need help with controlling two .swf's from third.
    I have a problem where I need to use a corporate designed
    .swf in a digital signage solution, but have been told by the legal
    department that it can not be modified in any way, I also can't
    have the source file yada yada. I pulled the .swfs from their
    website and I decompiled them to see what I was up against.
    The main swf that I need to control is HCIC.swf and the
    problem is it starts w/ a preloader, which after loading stops on a
    frame that requires user input (button press) on a play button,
    before the movie will proceed and play through.
    What I have done so far is to create a container swf,
    HCIC_container.swf that will act as Target for the HCIC.swf, and
    allow me to send actionscript to the file I'm not allowed to
    modify.
    I managed to get that done with the help of someone on
    another forum. It was my hope that the following script would just
    start HCIC.swf at a frame past the preloader and play button, and
    just play through.
    var container:MovieClip = createEmptyMovieClip("container",
    getNextHighestDepth());
    var mcLoader:MovieClipLoader = new MovieClipLoader();
    mcLoader.addListener(this);
    mcLoader.loadClip("MCIC.swf", container);
    function onLoadInit(mc:MovieClip) {
    mc.gotoAndPlay(14);
    But unfortunately it didn't solve my problem. Because there
    is a media-controller.swf, that is being loaded by HCIC.swf that
    has the controls including the play button to start HCIC.swf.
    Here's a link to a .zip file with all 3 .swf files, and all 3
    .fla files.
    http://www.axiscc.com/temp/HCIC.zip
    What I need to do is automatically start the HCIC.swf file
    bypassing the pre-loader and play button without editing it or the
    media-controller.swf in anyway. So all the scripting needs to be
    done in HCIC_container.swf.
    I know this is confusing, and its difficult to explain, but
    if you look at the files it should make sense.
    ActionScripting is far from my strong point, so I'm
    definitely over my head here.
    Thanks for your help.

    Got my solution on another forum.
    http://www.actionscript.org/forums/showthread.php3?t=146827

  • I need help with these two crash IDs nsStyleContext::FindChildWithRules(nsIAtom const*, nsRuleNode*) and DFusionWebPlugin@0x86b5

    I need help with these two crashes...
    PL_DHashTableOperate | GCGraphBuilder::NoteRoot(unsigned int, void*, nsCycleCollectionParticipant*)
    DFusionWebPlugin@0x86b5
    The first one happened a couple of days ago, a few times and not on any specific website.
    The second one only happens on the site below.

    The second one indicates a problem with the DFusionWebPlugin that shows in your More system details list.
    # D'Fusion Web Plug-In for Safari 64 bits (3.00.13774.0)
    # D'Fusion Web Plug-In (3.00.13774.0)
    What you posted are crash signatures.<br />
    It might help if you post the actual crash IDs (bp-xxxxxxxx-xxxxxxxxx-xxxx-xxxxxxxxxxxx).<br />
    You can find the IDs of the submitted crash reports on the <i>about:crashes</i> page.
    See http://kb.mozillazine.org/Breakpad (Mozilla Crash Reporter)

  • Need help to pair two iPhones?

    Need help to pair two iPhones 3GS. Both have Bluetooth turned on but only one shows the other phone. Please help?

    What are you trying to accomplish?
    Iphones support bluetooth for stereo speakers/headsets, hadsfree telephone devices/headsets, some peer-to-peer apps from the app store, some keyboards and internet tethering where provided by the carrier.
    Other than this it will not connect to another phone/device/computer.
    File transfer is not supported at all.

  • Need Help With Combining Two Variables For A Redirect

    Hello-
    <br />
    <br />In a different part of my site (built with ADDT) I have this script that creates a variable by combining two session variables, and then the new variable is submitted into a mysqul database table using a hidden form field:
    <br />
    <br />
    <form>
    <input type="hidden" name="exerreference" id="exerreference" value="<?php echo $_SESSION['kt_login_user']; ?><?php echo $_SESSION['kt_exer_reference']; ?> <br />" />
    <br />
    <br />There is also this part of the script in the header script:
    <br />
    <br />$ins_exer1-&gt;addColumn("exerreference", "STRING_TYPE", "POST", "exerreference");
    <br />
    <br />What I am trying to do now on another page is combine a session variable "kt_login_user" with a piece of dynamic text "AA" so that I can compare it to the field "exerreference" that was inserted into the database using the above script. If the two variables match, the idea is to have a redirect to another page.
    <br />
    <br />So in a hypothetical example, if the value of the session variable "kt_login_user " is "bestperson," and static text is "AA" then I need to create the variable bestpersonAA (because this is how the variables exist in the exerreference recordset). This variable bestpersonAA then needs to be compared to the recordset value exerreference and if they match, the page redirects to ../previous/portalpre.php. If the two variables do not match, then there is no redirect.
    <br />
    <br />Here is what I have so far:
    <br />
    <br />if (isset($_SESSION['kt_login_user']))
    <br />{
    <br />if ($_SESSION['kt_login_user'.'AA'] = $row_Recordsetexer1['exerreference'])
    <br />{
    <br /> header ("Location: ../previous/portalpre.php");
    <br />}
    <br />}
    <br />
    <br />The script doesn't work yet - it's redirecting regardless of if the two varibles match. Any ideas on the correct syntax to get this working correctly?
    <br />
    <br />Thanks
    <br />Dale</form>

    Hi Dale,
    if ($_SESSION['kt_login_user'.'AA'] = $row_Recordsetexer1['exerreference'])
    for checking whether two variables match, you´ll need the == comparison operator:
    if ($_SESSION['kt_login_user'.'AA'] == $row_Recordsetexer1['exerreference'])
    Cheers,
    Günter Schenk
    Adobe Community Expert, Dreamweaver

  • I lost my iphone some time ago. is there any way to recover my lost iphone? I really need help.thanks, I lost my iphone some time ago. is there any way to recover my lost iphone? I really need help.thanks

    i lost my iphone some time ago, is there any way to recover my lost iphone?i really need help..thanks before

    Don't know what you mean by "some time ago", but unless you activated Find My Phone and the phone is still on, the answer is no. (Even if you ask 3 times).

  • Need help merging these two files togehter

    I have the following class files one reads in a file another creates a file, Can somebody help me put the two class files together so i have one file which creates a file and reads it in, as i am stuck as to which bits need to be copied and which bits i only need once.
    /////////////////////////////////////////////////Code to create and save data in to file////////////////
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import bank.BankUI;
    import bank.*;
    public class CreateSequentialFile extends JFrame {
       private ObjectOutputStream output;
       private BankUI userInterface;
       private JButton enterButton, openButton;
       private Store store;
       private Employee record;
       // set up GUI
       public CreateSequentialFile()
          super( "Creating a Sequential File of Objects" ); // appears in top of gui
          // create instance of reusable user interface
          userInterface = new BankUI( 9 );  // number of textfields
          getContentPane().add( userInterface, BorderLayout.CENTER );
          // configure button doTask1 for use in this program
          openButton = userInterface.getDoTask1Button();
          openButton.setText( "Save to file" );
          // register listener to call openFile when button pressed
          openButton.addActionListener(
             // anonymous inner class to handle openButton event
             new ActionListener() {
                // call openFile when button pressed
                public void actionPerformed( ActionEvent event )
                   openFile();
             } // end anonymous inner class
          ); // end call to addActionListener
          // configure button doTask2 for use in this program
          enterButton = userInterface.getDoTask2Button();
          enterButton.setText( "Save to file..." );
          enterButton.setEnabled( false );  // disable button
          // register listener to call addRecord when button pressed
          enterButton.addActionListener(
             // anonymous inner class to handle enterButton event
             new ActionListener() {
                // call addRecord when button pressed
                public void actionPerformed( ActionEvent event )
                   addRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
          // register window listener to handle window closing event
          addWindowListener(
             // anonymous inner class to handle windowClosing event
             new WindowAdapter() {
                // add current record in GUI to file, then close file
                public void windowClosing( WindowEvent event )
                             if ( output != null )
                                addRecord();
                                  closeFile();
             } // end anonymous inner class
          ); // end call to addWindowListener
          setSize( 600, 500 );
          setVisible( true );
         store = new Store(100);
       } // end CreateSequentialFile constructor
       // allow user to specify file name
       private void openFile()
          // display file dialog, so user can choose file to open
          JFileChooser fileChooser = new JFileChooser();
          fileChooser.setFileSelectionMode( JFileChooser.FILES_ONLY );
          int result = fileChooser.showSaveDialog( this );
          // if user clicked Cancel button on dialog, return
          if ( result == JFileChooser.CANCEL_OPTION )
             return;
          File fileName = fileChooser.getSelectedFile(); // get selected file
          // display error if invalid
          if ( fileName == null || fileName.getName().equals( "" ) )
             JOptionPane.showMessageDialog( this, "Invalid File Name",
                "Invalid File Name", JOptionPane.ERROR_MESSAGE );
          else {
             // open file
             try {
                output = new ObjectOutputStream(
                   new FileOutputStream( fileName ) );
                openButton.setEnabled( false );
                enterButton.setEnabled( true );
             // process exceptions from opening file
             catch ( IOException ioException ) {
                JOptionPane.showMessageDialog( this, "Error Opening File",
                   "Error", JOptionPane.ERROR_MESSAGE );
          } // end else
       } // end method openFile
       // close file and terminate application
       private void closeFile()
          // close file
          try {
    int storeSize = store.getCount();
    for (int i = 0; i<storeSize;i++)
    output.writeObject(store.elementAt(i));
             output.close();
             System.exit( 0 );
          // process exceptions from closing file
          catch( IOException ioException ) {
             JOptionPane.showMessageDialog( this, "Error closing file",
                "Error", JOptionPane.ERROR_MESSAGE );
             System.exit( 1 );
       } // end method closeFile
       // add record to file
       public void addRecord()
          int employeeNumber = 0;
          String fieldValues[] = userInterface.getFieldValues();
          // if account field value is not empty
          if ( ! fieldValues[ BankUI.IDNUMBER ].equals( "" ) ) {
             // output values to file
             try {
                employeeNumber = Integer.parseInt(
                   fieldValues[ BankUI.IDNUMBER ] );
                        String dob = fieldValues[ BankUI.DOB ];
                        String[] dateofBirth = dob.split ("-"); // what used to put between number
                        String sDate = fieldValues[ BankUI.START ];
                        String[] startDate = sDate.split ("-");
                        String sex = fieldValues[ BankUI.GENDER ];
                        char gender = (sex.charAt(0));
    if ( employeeNumber >= 0 ) {
                    record  = new Employee(
                    fieldValues[ BankUI.NAME ],
                        gender,
                    new Date(     Integer.parseInt(dateofBirth[0]),
                              Integer.parseInt(dateofBirth[1]),
                              Integer.parseInt(dateofBirth[2])),
                        fieldValues[ BankUI.ADDRESS ],
                        fieldValues[ BankUI.NATINTNO ],
                        fieldValues[ BankUI.PHONE ],
                        fieldValues[ BankUI.IDNUMBER ],
              new Date(     Integer.parseInt(startDate[0]),
                              Integer.parseInt(startDate[1]),
                              Integer.parseInt(startDate[2])),
              Float.parseFloat( fieldValues[ BankUI.SALARY ] ));
                        if (!store.isFull())
                             store.add(record);
                        else
                        JOptionPane.showMessageDialog( this, "The Store is full you cannot add\n"+
                         "anymore employees. \nPlease Save Current File and Create a New File." );
                             System.out.println("Store full");
                        store.displayAll();
                        System.out.println("Count is " + store.getCount());
                                  // output record and flush buffer
                        //should be written to fuile in the close file method.
                   output.flush();
                else
                    JOptionPane.showMessageDialog( this,
                       "Account number must be greater than 0",
                       "Bad account number", JOptionPane.ERROR_MESSAGE );
                // clear textfields
                userInterface.clearFields();
             } // end try
             // process invalid account number or balance format
             catch ( NumberFormatException formatException ) {
                JOptionPane.showMessageDialog( this,
                   "Bad ID number, Date or Salary", "Invalid Number Format",
                   JOptionPane.ERROR_MESSAGE );
             // process exceptions from file output
             catch ( ArrayIndexOutOfBoundsException ArrayException ) {
                 JOptionPane.showMessageDialog( this, "Error with Start Date or Date of Birth",
                    "IO Exception", JOptionPane.ERROR_MESSAGE );
                      // process exceptions from file output
             catch ( IOException ioException ) {
                 JOptionPane.showMessageDialog( this, "Error writing to file",
                    "IO Exception", JOptionPane.ERROR_MESSAGE );
                closeFile();
          } // end if
       } // end method addRecord
       public static void main( String args[] )
          new CreateSequentialFile();
    } // end class CreateSequentialFile
    /////////////////////////////Code to read and cycle through the file created above///////////
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import bank.*;
    public class ReadSequentialFile extends JFrame {
       private ObjectInputStream input;
       private BankUI userInterface;
       private JButton nextButton, openButton, nextRecordButton ;
       private Store store = new Store(100);
         private Employee employeeList[] = new Employee[100];
         private int count = 0, next = 0;
       // Constructor -- initialize the Frame
       public ReadSequentialFile()
          super( "Add Employee" );
          // create instance of reusable user interface
          userInterface = new BankUI( 9 ); 
          getContentPane().add( userInterface, BorderLayout.CENTER );
          // get reference to generic task button doTask1 from BankUI
          openButton = userInterface.getDoTask1Button();
          openButton.setText( "Open File" );
          // register listener to call openFile when button pressed
          openButton.addActionListener(
             // anonymous inner class to handle openButton event
             new ActionListener() {
                // close file and terminate application
                public void actionPerformed( ActionEvent event )
                   openFile();
             } // end anonymous inner class
          ); // end call to addActionListener
          // register window listener for window closing event
          addWindowListener(
             // anonymous inner class to handle windowClosing event
             new WindowAdapter() {
                // close file and terminate application
                public void windowClosing( WindowEvent event )
                   if ( input != null )
                             closeFile();
                   System.exit( 0 );
             } // end anonymous inner class
          ); // end call to addWindowListener
          // get reference to generic task button doTask2 from BankUI
          nextButton = userInterface.getDoTask2Button();
          nextButton.setText( "Next Record" );
          nextButton.setEnabled( false );
          // register listener to call readRecord when button pressed
          nextButton.addActionListener(
             // anonymous inner class to handle nextRecord event
             new ActionListener() {
                // call readRecord when user clicks nextRecord
                public void actionPerformed( ActionEvent event )
                   readRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
          //get reference to generic task button do Task3 from BankUI
          // get reference to generic task button doTask3 from BankUI
          nextRecordButton = userInterface.getDoTask3Button();
          nextRecordButton.setText( "Get Next Record" );
          nextRecordButton.setEnabled( false );
          // register listener to call readRecord when button pressed
          nextRecordButton.addActionListener(
             // anonymous inner class to handle nextRecord event
             new ActionListener() {
                // call readRecord when user clicks nextRecord
                public void actionPerformed( ActionEvent event )
                   getNextRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
          pack();
          setSize( 600, 300 );
          setVisible( true );
       } // end ReadSequentialFile constructor
       // enable user to select file to open
       private void openFile()
          // display file dialog so user can select file to open
          JFileChooser fileChooser = new JFileChooser();
          fileChooser.setFileSelectionMode( JFileChooser.FILES_ONLY );
          int result = fileChooser.showOpenDialog( this );
          // if user clicked Cancel button on dialog, return
          if ( result == JFileChooser.CANCEL_OPTION )
             return;
          // obtain selected file
          File fileName = fileChooser.getSelectedFile();
          // display error if file name invalid
          if ( fileName == null || fileName.getName().equals( "" ) )
             JOptionPane.showMessageDialog( this, "Invalid File Name",
                "Invalid File Name", JOptionPane.ERROR_MESSAGE );
          else {
             // open file
             try {
                input = new ObjectInputStream(
                   new FileInputStream( fileName ) );
                openButton.setEnabled( false );
                nextButton.setEnabled( true );
             // process exceptions opening file
             catch ( IOException ioException ) {
                JOptionPane.showMessageDialog( this, "Error Opening File",
                   "Error", JOptionPane.ERROR_MESSAGE );
          } // end else
       } // end method openFile
       // read record from file
       public void readRecord()
          Employee record;
          // input the values from the file
          try {
                  record = ( Employee ) input.readObject();
                   employeeList[count++]= record;
                   store.add(record);
              store.displayAll();
              System.out.println("Count is " + store.getCount());
             // create array of Strings to display in GUI
             String values[] = {
                        String.valueOf(record.getName()),
                            String.valueOf(record.getGender()),
                        String.valueOf( record.getDateOfBirth()),
                        String.valueOf( record.getID()),
                             String.valueOf( record.getStartDate()),
                        String.valueOf( record.getSalary()),
                        String.valueOf( record.getAddress()),
                           String.valueOf( record.getNatInsNo()),
                        String.valueOf( record.getPhone())
    // i added all those bits above split onto one line to look neater
             // display record contents
             userInterface.setFieldValues( values );
          // display message when end-of-file reached
          catch ( EOFException endOfFileException ) {
             nextButton.setEnabled( false );
          nextRecordButton.setEnabled( true );
             JOptionPane.showMessageDialog( this, "No more records in file",
                "End of File", JOptionPane.ERROR_MESSAGE );
          // display error message if class is not found
          catch ( ClassNotFoundException classNotFoundException ) {
             JOptionPane.showMessageDialog( this, "Unable to create object",
                "Class Not Found", JOptionPane.ERROR_MESSAGE );
          // display error message if cannot read due to problem with file
          catch ( IOException ioException ) {
             JOptionPane.showMessageDialog( this,
                "Error during read from file",
                "Read Error", JOptionPane.ERROR_MESSAGE );
       } // end method readRecord
       private void getNextRecord()
               Employee record = employeeList[next++%count];//cycles throught accounts
          //create aray of string to display in GUI
          String values[] = {String.valueOf(record.getName()),
             String.valueOf(record.getGender()),
              String.valueOf( record.getStartDate() ), String.valueOf( record.getAddress()),
         String.valueOf( record.getNatInsNo()),
         String.valueOf( record.getPhone()),
             String.valueOf( record.getID() ),
               String.valueOf( record.getDateOfBirth() ),
         String.valueOf( record.getSalary() ) };
         //display record contents
         userInterface.setFieldValues(values);
         //display record contents
      // again i nicked these write them on one line
      // close file and terminate application
       private void closeFile()
          // close file and exit
          try {
             input.close();
             System.exit( 0 );
          // process exception while closing file
          catch ( IOException ioException ) {
             JOptionPane.showMessageDialog( this, "Error closing file",
                "Error", JOptionPane.ERROR_MESSAGE );
             System.exit( 1 );
       } // end method closeFile
       public static void main( String args[] )
          new ReadSequentialFile();
    } // end class ReadSequentialFile

    I tired putting both codes together and got this, it runs but does not do what i want can anybody help me put the above two codes together as one
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import bank.BankUI;
    import bank.*;
    public class togehter extends JFrame {
       private ObjectOutputStream output;
       private BankUI userInterface;
       private JButton enterButton, openButton;
       //private Store store; wont work if i un comment this
       private Employee record;
    // from read
         private ObjectInputStream input;
         private JButton nextButton, openButton2, nextRecordButton ;
            private Store store = new Store(100);
         private Employee employeeList[] = new Employee[100];
         private int count = 0, next = 0;
    // end of read
       // set up GUI
       public togehter()
          super( "Creating a Sequential File of Objects" ); // appears in top of gui
          // create instance of reusable user interface
          userInterface = new BankUI( 9 );  //  textfields
          getContentPane().add( userInterface, BorderLayout.CENTER );
          // configure button doTask1 for use in this program
          openButton = userInterface.getDoTask1Button();
          openButton.setText( "Save to file" );
          // register listener to call openFile when button pressed
          openButton.addActionListener(
             // anonymous inner class to handle openButton event
             new ActionListener() {
                // call openFile when button pressed
                public void actionPerformed( ActionEvent event )
                   openFile();
             } // end anonymous inner class
          ); // end call to addActionListener
    // from read
          // get reference to generic task button doTask1 from BankUI
          openButton2 = userInterface.getDoTask1Button();
          openButton2.setText( "Open File" );
          // register listener to call openFile when button pressed
          openButton2.addActionListener(
             // anonymous inner class to handle openButton2 event
             new ActionListener() {
                // close file and terminate application
                public void actionPerformed( ActionEvent event )
                   openFile();
             } // end anonymous inner class
          ); // end call to addActionListener
    // from read end
    // from read
    // register window listener for window closing event
          addWindowListener(
             // anonymous inner class to handle windowClosing event
             new WindowAdapter() {
                // close file and terminate application
                public void windowClosing( WindowEvent event )
                   if ( input != null )
                             closeFile();
                   System.exit( 0 );
             } // end anonymous inner class
          ); // end call to addWindowListener
    //from read end
    // from read
       // get reference to generic task button doTask2 from BankUI
          nextButton = userInterface.getDoTask2Button();
          nextButton.setText( "Next Record" );
          nextButton.setEnabled( false );
          // register listener to call readRecord when button pressed
          nextButton.addActionListener(
             // anonymous inner class to handle nextRecord event
             new ActionListener() {
                // call readRecord when user clicks nextRecord
                public void actionPerformed( ActionEvent event )
                   readRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
          //get reference to generic task button do Task3 from BankUI
          // get reference to generic task button doTask3 from BankUI
          nextRecordButton = userInterface.getDoTask3Button();
          nextRecordButton.setText( "Get Next Record" );
          nextRecordButton.setEnabled( false );
          // register listener to call readRecord when button pressed
          nextRecordButton.addActionListener(
             // anonymous inner class to handle nextRecord event
             new ActionListener() {
                // call readRecord when user clicks nextRecord
                public void actionPerformed( ActionEvent event )
                   getNextRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
    // from read end
          // configure button doTask2 for use in this program
          enterButton = userInterface.getDoTask2Button();
          enterButton.setText( "Save to file..." );
          enterButton.setEnabled( false );  // disable button
          // register listener to call addRecord when button pressed
          enterButton.addActionListener(
             // anonymous inner class to handle enterButton event
             new ActionListener() {
                // call addRecord when button pressed
                public void actionPerformed( ActionEvent event )
                   addRecord();
             } // end anonymous inner class
          ); // end call to addActionListener
          // register window listener to handle window closing event
          addWindowListener(
             // anonymous inner class to handle windowClosing event
             new WindowAdapter() {
                // add current record in GUI to file, then close file
                public void windowClosing( WindowEvent event )
                             if ( output != null )
                                addRecord();
                                  closeFile();
             } // end anonymous inner class
          ); // end call to addWindowListener
          setSize( 600, 500 );
          setVisible( true );
         store = new Store(100);
       } // end CreateSequentialFile constructor
       // allow user to specify file name
       private void openFile()
          // display file dialog, so user can choose file to open
          JFileChooser fileChooser = new JFileChooser();
          fileChooser.setFileSelectionMode( JFileChooser.FILES_ONLY );
          int result = fileChooser.showSaveDialog( this );
          // if user clicked Cancel button on dialog, return
          if ( result == JFileChooser.CANCEL_OPTION )
             return;
          File fileName = fileChooser.getSelectedFile(); // get selected file
          // display error if invalid
          if ( fileName == null || fileName.getName().equals( "" ) )
             JOptionPane.showMessageDialog( this, "Invalid File Name",
                "Invalid File Name", JOptionPane.ERROR_MESSAGE );
          else {
             // open file
             try {
                output = new ObjectOutputStream(
                   new FileOutputStream( fileName ) );
                openButton.setEnabled( false );
                enterButton.setEnabled( true );
             // process exceptions from opening file
             catch ( IOException ioException ) {
                JOptionPane.showMessageDialog( this, "Error Opening File",
                   "Error", JOptionPane.ERROR_MESSAGE );
          } // end else
       } // end method openFile
    // from read
    public void readRecord()
          Employee record;
          // input the values from the file
          try {
                  record = ( Employee ) input.readObject();
                   employeeList[count++]= record;
                   store.add(record);/////////ADDS record to Store
              store.displayAll();
              System.out.println("Count is " + store.getCount());
             // create array of Strings to display in GUI
             String values[] = {
                        String.valueOf(record.getName()),
                            String.valueOf(record.getGender()),
                        String.valueOf( record.getDateOfBirth()),
                        String.valueOf( record.getID()),
                             String.valueOf( record.getStartDate()),
                        String.valueOf( record.getSalary()),
                        String.valueOf( record.getAddress()),
                           String.valueOf( record.getNatInsNo()),
                        String.valueOf( record.getPhone())
             // display record contents
             userInterface.setFieldValues( values );
          // display message when end-of-file reached
          catch ( EOFException endOfFileException ) {
             nextButton.setEnabled( false );
          nextRecordButton.setEnabled( true );
             JOptionPane.showMessageDialog( this, "No more records in file",
                "End of File", JOptionPane.ERROR_MESSAGE );
          // display error message if class is not found
          catch ( ClassNotFoundException classNotFoundException ) {
             JOptionPane.showMessageDialog( this, "Unable to create object",
                "Class Not Found", JOptionPane.ERROR_MESSAGE );
          // display error message if cannot read due to problem with file
          catch ( IOException ioException ) {
             JOptionPane.showMessageDialog( this,
                "Error during read from file",
                "Read Error", JOptionPane.ERROR_MESSAGE );
       } // end method readRecord
    //from read end
    // from read
    private void getNextRecord()
               Employee record = employeeList[next++%count];//cycles throught accounts
          //create aray of string to display in GUI
          String values[] = {String.valueOf(record.getName()),
             String.valueOf(record.getGender()),
              String.valueOf( record.getStartDate() ), String.valueOf( record.getAddress()),
         String.valueOf( record.getNatInsNo()),
         String.valueOf( record.getPhone()),
             String.valueOf( record.getID() ),
               String.valueOf( record.getDateOfBirth() ),
         String.valueOf( record.getSalary() ) };
         //display record contents
         userInterface.setFieldValues(values);
         //display record contents
    // from read end
       // close file and terminate application
       private void closeFile()
          // close file
          try {
                                            int storeSize = store.getCount();
                                            for (int i = 0; i<storeSize;i++)
                                            output.writeObject(store.elementAt(i));
             output.close();
    input.close(); // from read
             System.exit( 0 );
          // process exceptions from closing file
          catch( IOException ioException ) {
             JOptionPane.showMessageDialog( this, "Error closing file",
                "Error", JOptionPane.ERROR_MESSAGE );
             System.exit( 1 );
       } // end method closeFile
       // add record to file
       public void addRecord()
          int employeeNumber = 0;
          String fieldValues[] = userInterface.getFieldValues();
          // if account field value is not empty
          if ( ! fieldValues[ BankUI.IDNUMBER ].equals( "" ) ) {
             // output values to file
             try {
                employeeNumber = Integer.parseInt(
                   fieldValues[ BankUI.IDNUMBER ] );
                        String dob = fieldValues[ BankUI.DOB ];
                        String[] dateofBirth = dob.split ("-"); // what used to put between number chnage to /
                        String sDate = fieldValues[ BankUI.START ];
                        String[] startDate = sDate.split ("-");
                        String sex = fieldValues[ BankUI.GENDER ];
                        char gender = (sex.charAt(0)); // check if m or f prob check in employee
    if ( employeeNumber >= 0 ) {
                    record  = new Employee(
                    fieldValues[ BankUI.NAME ],
                        gender,
                    new Date(     Integer.parseInt(dateofBirth[0]),
                              Integer.parseInt(dateofBirth[1]),
                              Integer.parseInt(dateofBirth[2])),
                        fieldValues[ BankUI.ADDRESS ],
                        fieldValues[ BankUI.NATINTNO ],
                        fieldValues[ BankUI.PHONE ],
                        fieldValues[ BankUI.IDNUMBER ],
              new Date(     Integer.parseInt(startDate[0]),
                              Integer.parseInt(startDate[1]),
                              Integer.parseInt(startDate[2])),
              Float.parseFloat( fieldValues[ BankUI.SALARY ] ));
                        if (!store.isFull())
                             store.add(record);
                        else
                        JOptionPane.showMessageDialog( this, "The Store is full you cannot add\n"+
                         "anymore employees. \nPlease Save Current File and Create a New File." );
                             System.out.println("Store full");
                        store.displayAll();
                        System.out.println("Count is " + store.getCount());
                             output.flush();
                else
                    JOptionPane.showMessageDialog( this,
                       "Account number must be greater than 0",
                       "Bad account number", JOptionPane.ERROR_MESSAGE );
                // clear textfields
                userInterface.clearFields();
             } // end try
             // process invalid account number or balance format
             catch ( NumberFormatException formatException ) {
                JOptionPane.showMessageDialog( this,
                   "Bad ID number, Date or Salary", "Invalid Number Format",
                   JOptionPane.ERROR_MESSAGE );
             // process exceptions from file output
             catch ( ArrayIndexOutOfBoundsException ArrayException ) {
                 JOptionPane.showMessageDialog( this, "Error with Start Date or Date of Birth",
                    "IO Exception", JOptionPane.ERROR_MESSAGE );
                      // process exceptions from file output
             catch ( IOException ioException ) {
                 JOptionPane.showMessageDialog( this, "Error writing to file",
                    "IO Exception", JOptionPane.ERROR_MESSAGE );
                closeFile();
          } // end if
       } // end method addRecord
       public static void main( String args[] )
          new togehter();
    } // end class CreateSequentialFileI GOT IT WORKING BUT THERE WAS A WEIRD ERROR I GET WHEN TRYING TO READ A FILE I JUST WROTE THE THREAD FOR THAT CAN BE FOUND:
    http://forum.java.sun.com/thread.jspa?threadID=5147209
    Message was edited by:
    ajrobson

  • Need help in combining two similair SQLs into one

    DB Version:10gR2
    I need to combine the following two queries into one query and return the following three columns
    Unprocessed Quantity1,Unprocessed Quantity2, Total Uprocessed Cost
    Unprocessed Quantity1 can be determined using
    select t.ITEM, sum(t.QTY)
      from (select cd.ITEM_ID ITEM, cd.ACTL_QTY QTY
              from CONVEY_HDR ch, CURRENT_INVN cd, ALLOC_HDR ah
             where ........
            UNION
            select sd.ITEM_ID ITEM, sd.INVN_QTY QTY
              from shp_dtl pd
            UNION
            Select item_id, inv_qty from another table
        GROUP BY.....
    ITEM        SUM(T.QTY)
    88JAT                25
    000002395           1
    300108396          27
    000004397           7
    73984290           15Unprocessed quantity2 can be determined using
    select t.ITEM, sum(t.QTY)
         from (select cd.ITEM_ID ITEM, cd.ACTL_QTY QTY
                 from CONVEY_HDR ch, CURRENT_INVN cd, ALLOC_HDR ah
        where rownum<6
       group by t.ITEM
       order by t.ITEM;
    ITEM        SUM(T.QTY)
    189436171           2
    009438837         160
    000040685          16
    000032410          18Total Unprocessed Cost can found using the sum of Quantities for a particular Item from above two queries multiplied by
    ITEM_COST for that ITEM (which is found in ITEM_DTL table). For every item; ITEM_DTL.item_id=CARTON_dTL.carton_id
    Total Unprocessed Cost= (Unprocessed Quantity1+Unprocessed Quantity2)*ITEM_DTL. ITEM_COST
    Note: Unprocessed Quantity2 query looks very similair to first SQL in UNION of Unprocessed Quantity1, but ah.STAT_CODE < 90 for Unprocessed Quantity2 query
    Edited by: user636669 on Jan 14, 2009 10:40 AM
    Edited by: user636669 on Jan 14, 2009 10:57 AM
    Corrected typo
    Edited by: user636669 on Jan 14, 2009 7:07 PM

    Hi,
    Put the two queries you posted in sub-queries. You can then use their result sets as if they were tables.
    Do something like this:
    WITH  uq1  AS
        select t.ITEM, sum(t.QTY) AS total
          from (select cd.ITEM_ID ITEM, cd.ACTL_QTY QTY
                  from CASE_HDR ch, CASE_DTL cd, ASN_HDR ah
        ... the rest of your first query goes here
    ,     uq2  AS
        select t.ITEM, sum(t.QTY)  AS total
             from (select cd.ITEM_ID ITEM, cd.ACTL_QTY QTY
                     from CASE_HDR ch, CASE_DTL cd, ASN_HDR ah
        ... the rest of your second query goes here
    SELECT  uq1.item
    ,       uq1.total  AS "Unprocessed Quantity1"
    ,       uq2.total  AS "Unprocessed Quantity2"
    ,       (uq1.total + uq2.total) * dtl.item_cost
                       AS "Total Uprocessed Cost"
    FROM    uq1
    JOIN    uq2               ON uq1.item = uq2.item
    JOIN    item_dtl   dtl    ON uq1.item = dtl.item;If some items are in uq1 but not in uq2 (or vice-versa), then you'll probably want to do outer joins.
    I don't have any of the tables used, so I can't test this myself.
    If you need more help. then post a little sample data from each of the tables, and the results you want from that data.
    It looks like you're doing the same join in each of your original queries.
    You can add another sub-query that does that join once, and then use that sub-query in sub-queries uq1 and uq2.

  • Need help deciding between two different Zen products [micro vs ... micr

    Hey all,
    Just bought a black zen micro last Wednesday and am loving it. Bought it from Best Buy and splurged on the extra protection plan. Unfortunatlly, after a trip to Fry's today, I'm questioning my impulse buy.
    At Fry's they have two different box sets of Zen Micros. One small one, like the one I got at Best Buy, with the player/battery, headphones, usb cable and smooth little pouch. But they also had a larger box with player/battery, headphones, usb cable, smooth little pouch AND an AC charger (and I'm not sure, but possibly a second battery?). I am assuming that this large box with more items (but still the same $99 price) is an older box. What I'm wondering is if there is any difference between the players in the two boxes. If there is not a difference, then I'm going back to Best Buy to get a refund and get one of the boxes at Fry's that has the charger with it (a much needed accessory for my uses). Of course, if the players do differ, I would have to find out in what way and weigh my option to keep what I have or return it and base a decision on that. That, of course, is what prompted this post.
    I know some players just can't help but be deffecti've, does this older box contain a series with a higher rate of returns? Does it look different (I really like the way the back lighting looks on mine)? Anyone have experience with one of the older boxed sets and one of the newer ones (bought one, then another for S.O.)?
    I'm already leaning towards return, but I just wanted to check with other creative users before I made my final decision.
    Thanks,
    -Jonathan

    There is no difference in the operation of the players. The very early Micros had the word "BACK" on the return button, the newer version just has a left pointing arrow. Supposedly, the newest units have a revision to the headphone jack, but there is no way of telling if you have the better or worse jack. The large box will also have the holder with the belt clip and stand. The Limited Edition has the extra battery, and is clearly marked with a sticker on the front of the box that says "Limited Edition FREE Extra Battery for 24 Hour Playtime. Some people say that the backlighting is different with the newer units, I dont know. The large box IS the older retail version. Hope this helps you.

  • Need help to join two tables using three joins, one of which is a (between) date range.

    I am trying to develop a query in MS Access 2010 to join two tables using three joins, one of which is a (between) date range. The tables are contained in Access. The reason
    the tables are contained in access because they are imported from different ODBC warehouses and the data is formatted for uniformity. I believe this cannot be developed using MS Visual Query Designer. I think writing a query in SQL would be suiting this project.
    ABCPART links to XYZPART. ABCSERIAL links to XYZSERIAL. ABCDATE links to (between) XYZDATE1 and ZYZDATE2.
    [ABCTABLE]
    ABCORDER
    ABCPART
    ABCSERIAL
    ABCDATE
    [ZYXTABLE]
    XYZORDER
    XYZPART
    XYZSERIAL
    XYZDATE1
    XYZDATE2

    Thank you for the looking at the post. The actual table names are rather ambiguous. I renamed them so it would make more sense. I will explain more and give the actual names. What I do not have is the actual data in the table. That is something I don't have
    on this computer. There are no "Null" fields in either of the tables. 
    This table has many orders (MSORDER) that need to match one order (GLORDER) in GLORDR. This is based on MSPART joined to GLPART, MSSERIAL joined to GLSERIAL, and MSOPNDATE joined if it falls between GLSTARTDATE and GLENDDATE.
    [MSORDR]
    MSORDER
    MSPART
    MSSERIAL
    MSOPNDATE
    11111111
    4444444
    55555
    2/4/2015
    22222222
    6666666
    11111
    1/6/2015
    33333333
    6666666
    11111
    3/5/2015
    This table has one order for every part number and every serial number.
    [GLORDR]
    GLORDER
    GLPART
    GLSERIAL
    GLSTARTDATE
    GLENDDATE
    ABC11111
    444444
    55555
    1/2/2015
    4/4/2015
    ABC22222
    666666
    11111
    1/5/2015
    4/10/2015
    AAA11111
    555555
    22222
    3/2/2015
    4/10/2015
    Post Query table
    GLORDER
    MSORDER
    GLSTARTDATE
    GLENDDATE
    MSOPNDATE
    ABC11111
    11111111
    1/2/2015
    4/4/2015
    2/4/2015
    ABC22222
    22222222
    1/5/2015
    4/10/2015
    1/6/2015
    ABC22222
    33333333
    1/5/2015
    4/10/2015
    3/5/2015
    This is the SQL minus the between date join.
    SELECT GLORDR.GLORDER, MSORDR.MSORDER, GLORDR.GLSTARTDATE, GLORDR.GLENDDATE, MSORDR.MSOPNDATE
    FROM GLORDR INNER JOIN MSORDR ON (GLORDR.GLSERIAL = MSORDR.MSSERIAL) AND (GLORDR.GLPART = MSORDR.MSPART);

  • Need help in merging two database

    Dear All,
    Can any one please let me know the methodology/Best practices for merging two databases.
    We are having two oracle Database A and B, the data from
    Database A has to be migrated to Database B using PL/SQL scripting.
    it will be a great help,Thanks in advance!

    Hi,
    Use the DB Links and try to use the "MERGE" that is better.
    you can clone it right, almost you are getting the same data from A to B and then you are going to Update is I am correct. Does the "B" consist the data, If yes then you can't clone on exiting DB, As i said above go for DB links and write custom scripts as per your requirement.
    Refer for DB links
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/ds_admin.htm#sthref4108
    - Pavan Kumar N

  • Need help with doing two things at once

    hey all!
    i'm trying to write a program where the user has twenty seconds to guess the houshold item. every five seconds the pc gives a clue, if the user manages to guess it in time, they win! else...
    anyway, my compiler comes up with nothing but when i execute it and press "go" to start the process, the program does what it is meant to exept for at the end where it always displays "you lose" regardless of anything that has happened.i'm not sure what i'm doing wrong.
    here's the code:
    import java.util.Random;
    import javax.swing.event.DocumentListener;
    import javax.swing.event.DocumentEvent;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.*;
    import java.awt.event.*;
    import java.awt.FlowLayout;
    import static java.lang.System.out;
    import java.util.Timer;
    import java.util.TimerTask;
    class Quiz extends JFrame implements ActionListener, ItemListener{
         public static void main(String args[]){
              new Quiz();
         String qp;
         int duh = 1;
         int funnum = 0;
         Timer othertime = new Timer();
         JLabel ql1 = new JLabel();
         JLabel ql2 = new JLabel();
         JLabel ql3 = new JLabel();
         JLabel ql4 = new JLabel();
         JLabel ql5 = new JLabel();
         JLabel ql6 = new JLabel();
         JLabel timelabel = new JLabel();
        JButton qlb1 = new JButton("go");
        JComboBox box = new JComboBox();
         public Quiz(){
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         setLayout(new FlowLayout());
         add(ql1);
         ql1.setVisible(false);
         add(ql2);
         ql2.setVisible(false);
         add(ql3);
         ql3.setVisible(false);
         add(ql4);
         ql4.setVisible(false);
         add(ql5);
         ql5.setVisible(false);
         add(ql6);
         add(timelabel);
         add(qlb1);
         qlb1.addActionListener(this);
         add(box);
         box.addItem("");
         box.addItem("shower");
         box.addItem("bed");
         box.addItem("spade");
         box.addItem("knife");
         box.addItem("book");
         box.addItem("rake");
         box.addItem("bookshelf");
         box.addItem("sink");
         box.addItem("bedside lamp");
         box.addItem("wooden spoon");
         box.addItem("'quiet' sign");
         box.addItem("baking tray");
         box.addItem("desk");
         box.addItem("toilet");
         box.addItem("compost");
         box.addItem("pillow");
         box.addItem("blanket");
         box.addItem("pan");
         box.addItem("study computer");
         box.addItem("tap");
         box.addItem("bookworms");
         box.addItem("duvey");
         box.addItem("bath");
         box.addItem("plants");
         box.addItem("cooker");
         box.addItem("trampoline");
         box.addItemListener(this);
         box.setEnabled(false);
         pack();
         setVisible(true);     
         public void actionPerformed(ActionEvent e){
         qlb1.setEnabled(false);
         int rndmnm = new Random().nextInt(10)+1;
         final int getnum = rndmnm;
         switch(getnum){
         case 1:
         ql1.setText("this is a kitchen item");
         ql2.setText("it is used for cooking");
         ql3.setText("it requires heat");
         ql4.setText("it needs greasy paper");
         qp = "baking tray";
         break;
         case 2:
             ql1.setText("this is a kitchen item");
             ql2.setText("this item has no food put into it to cook");
             ql3.setText("this item does not require heat");
             ql4.setText("it is used for mixing ingredients");
             qp = "wooden spoon";
            break;
           case 3:
             ql1.setText("this is a bathroom item");
             ql2.setText("it is used when washing");
             ql3.setText("it does not create foam");
             ql4.setText("it can be relaxing");
             qp = "bath";
                break;
                case 4:
                ql1.setText("this is a bathroom item");
                ql2.setText("it squirts water");
                ql3.setText("it is stationary");
                ql4.setText("temperature does not matter");
                qp = "toilet";
                break;
                case 5:
                ql1.setText("this is a bedroom item");
                ql2.setText("it is slept on top of");
                ql3.setText("all except the head sleeps on top of it");
                ql4.setText("it is not hard");
                qp = "duvey";
                break;
                case 6:
                ql1.setText("this is a bedroom item");
                ql2.setText("it is not hard");
                ql3.setText("legs generally never lie on top of it");
                ql4.setText("it is nearly as long as the duve");
                qp = "blanket";
                break;
                case 7:
                ql1.setText("this is a library item");
                ql2.setText("it is of great use");
                ql3.setText("it is material");
                ql4.setText("it stores much data");
                qp = "bookshelf";
                break;
                case 8:
                ql1.setText("this is a library item");
                ql2.setText("it is simple to use");
                ql3.setText("you do not nead to search much to find it");
                ql4.setText("it is not made of wood or other carpentry material");
                qp = "'quiet' sign";
                break;
                case 9:
                ql1.setText("this is a garden item");
                ql2.setText("it covers area");
                ql3.setText("it can crush plants...");
                ql4.setText("...but is also very useful to them");
                qp = "compost";
                break;
                default:
                ql1.setText("this is a garden item");
                ql2.setText("it requires heavy work to do");
                ql3.setText("and good looking after");
                ql4.setText("the outcome is surprisingly delicate");
                qp = "plants";
                break;
         othertime.scheduleAtFixedRate(new TimerTask() {
                   int otherval = 0;
                   public void run() {
                        switch (otherval)
                             case 1:
                             timelabel.setText("20");
                                  ql5.setText(qp);
                                  ql1.setVisible(true);
                                  box.setEnabled(true);
                                  break;
                             case 2:
                                 timelabel.setText("19");
                                 break;
                                      case 3:
                                 timelabel.setText("18");
                                 break;
                                      case 4:
                                 timelabel.setText("17");
                                 break;
                             case 5:
                                  timelabel.setText("16");
                                  ql2.setVisible(true);
                                  break;
                                       case 6:
                                 timelabel.setText("15");
                                 break;
                                      case 7:
                                 timelabel.setText("14");
                                 break;
                                      case 8:
                                 timelabel.setText("13");
                                 break;
                                      case 9:
                                 timelabel.setText("12");
                                 break;
                             case 10:
                                 timelabel.setText("11");
                                  ql3.setVisible(true);
                                  break;
                                       case 11:
                                 timelabel.setText("10");
                                 break;
                                      case 12:
                                 timelabel.setText("9");
                                 break;
                                      case 13:
                                 timelabel.setText("8");
                                 break;
                                      case 14:
                                 timelabel.setText("7");
                                 break;
                             case 15:
                             timelabel.setText("6");
                                  ql4.setVisible(true);
                                  break;
                                       case 16:
                                 timelabel.setText("5");
                                 break;
                                      case 17:
                                 timelabel.setText("4");
                                 break;
                                      case 18:
                                 timelabel.setText("3");
                                 break;
                                      case 19:
                                 timelabel.setText("2");
                                 break;
                             case 20:
                                 timelabel.setText("1");
                                 break;
                             case 21:
                                 timelabel.setText("");
                                 duh --;
                             if(duh == 1){
                             ql6.setText("you win!!!");     
                             } else {
                             ql6.setText("you lose");
                                  break;
                        otherval++;
                   } }, 1000, 1000);
           public void itemStateChanged(ItemEvent e){
                        box.setEnabled(false);
                        if(box.getSelectedItem() == ql5.getText()){
                        duh ++;
                        } else {
                      funnum ++;
      }as i say, the ending will always be "you lose".
    anyhoo, for those of you who want a question its "what am i doing wrong that prevents the user from winning?"
    thankyou for your help (if you do help).

    the point of the decremation is that duh is incremented if you get the answer right,
    public void itemStateChanged(ItemEvent e){
                        box.setEnabled(false);
                        if(box.getSelectedItem() == ql5.getText()){
                        duh ++;
                        } else {
                      funnum ++;
                   } and then duh is decremented, like so:
         case 21:
                                 timelabel.setText("");
                                 duh --;
                             if(duh == 1){
                             ql6.setText("you win!!!");     
                             } else {
                             ql6.setText("you lose");
                                  break;the point is that if the user gets it right, duh should be incremented, then in the switch statements decrements the value of duh. so if the user got it right, duh should equal 1. else duh will be decreased to zero
    hope that makes it more clear (i'm not very good with explaining stuff)

  • Need help creating a two-digit JFormattedTextField

    I want to create a JFormattedTextField that, while editing, accepts only numbers with two or less digits (i.e. 0 - 99, and blank space), and if the user types anything violating this constraint, the keystroke is ignored. Furthermore, when the text field does not have focus, and the number in it has less than two digits, zero-padding occurs (e.g. 9 -> 09, blank -> 00). Furthermore, would it be possible enforce the same behavior when calling setText() on the text field? Any help would be appreciated.

    I've read it (many times), but both MaskFormatter and DecimalFormat don't solve my problem completely. MaskFormatter doesn't handle padding numbers with zero, and DecimalFormat doesn't constrain the input while user is editing. I've also tried using AbstractFormatterFactory to combine MaskFormatter and DecimalFormatter for the editing and displaying behavior, but can't get it to work correctly. I'm wondering if there's a simple solution I'm missing.

  • Need help recording with two linked firepods and an outboard mixer

    Hi!
    Well I've been using Logic for a couple of years but always stayed "in the box".
    Now that I started working out of the box I encountered a strange problem. Let me explain...
    Since recently I have an analog Soundcraft Ghost mixer and two firepods. I linked the two firepods (aggregate device) and recorded 16 tracks into Logic. I sent these back to the mixer through the outputs of my firepods (I used the I/O plugin on each track to get a mono output).
    I made the whole mix on the mixer and now I want to record that mix back into logic (in order to have a Stereo mix ready for mastering).
    I thought all I had to do was create a new stereo audio track in Logic (choose input i.e. 1-2), connect the master output from the table to input 1-2 on my firepods, set the gain on the preamps. Arm the track, hit record.
    Now the problem I have is that what is recorded sounds reeeaaaally strange. It's like distorted or some kinda feedback. Bit difficult to explain. But it sure doesn't sound right at all...
    Does anyone knows what the problem could be?
    Could it be that with the firepods you can't use an input if you allready use it's output?
    If you need any more info, let me know!
    By the way, I'm working on a Macbook Pro 2,4 with osx10.5.6 and Logic Pro 8.0.2
    Greetz,
    NLS

    The problem sounds like you have a feedback loop between the outputs and the input. Here's my suggestion:
    1 Turn the Mixer control on the Firepods all the way to the right, to make sure the Input signal is not mixed back in to the outputs
    2 Mute the stereo Input channel that you're recording on (in Logic) before you arm the Record button
    3 After you have recorded your mix into Logic, disarm the Record button, un-mute and solo the channel, then play back

  • Need help on matching two 23" ACDs

    I currently have two 23" ACDs connected to one ATI Radeon 4870 in my Mac Pro. My problem is the brightness and color on the displays vary greatly to the point that it is easily noticable by the naked eye. Is there anyway to calibrate the two monitors to match each other using only one video card. I have a HueyPro, but it wants me to adjust contrast on the monitors so I'm assuming it was built for a PC monitor. Any help is greatly appreciated.

    No way. It's genuine cryptography and there is no way to derive the original serial number from an install's activation key. You can only deactivate all installs and then reactivate them based on a list. Otherwise you can simply try to find a free activation from one of your serial numbers...
    Mylenium

Maybe you are looking for

  • Custom table(in separate Tray) to display Vendor Master data inSRM 7.0

    Hi, How to add custom table as a tray in under Bidder data Tab of Display Supplier screen. All the ther trays in that Tab are under FPM_OIF_COMPONENT. Do I need to modify FPM component? If so than how can I catch the Business Partner Number as the da

  • How To Remove the Deletion MArk on Customer

    Dear all, I am using a customer in Test system it says message the customer marked for deletion i want to remove the mark ,How can i do that ?? Thanks Sundar

  • ABAP function module to check data is a valid number

    Hi Guys, I am parsing a long string from a R3 table to load into BW, and need to verify the incoming data is valid number instead of having some or all charactors so I can load into a quantity field, in BW, it is a Key figure infoObject. The string l

  • Java 8 update 45 on OSX 10.9.5

    I simply can't update to Java 8 update 45 (latest version). I'm running on OSX10.9.5 I download it, install it, get a success confirmation, yet when I get to test if the installation worked, the Java page says that my version is out of date, and prom

  • Lost LP8 authorization after Leopard upgrade

    I upgraded to Leopard and now I have lost my Logic Studio authorization. Where are those magical numbers I have to now re-enter supposed to be? I looked on my Logic Studio box and all through it and I find nothing. Funny how my 3rd party apps made it