Don't understand why TimeMachine stops before end of backup

Hello,
I wish I use TimeMachine to backup my computer. When the TimeMachine process starts, the dialog box with the progress bar says "saving xxx/93Mo". However, the backup process stops by itself at 65 Go (!!) and the Console says the data were saved sucessfully ... If I check the data size that have been saved, I see 65 Go used too on the external hard disk. However, as far as I know, TimeMachine does not process any compression ?
I checked the external hard disk used to save datas : it is a Western Digital 750 Go with 2 partitions, the second one (200 Go) being dedicated to TimeMachine. Before every test I did, the 200 Go partition were erased. I saw a Warning at Apple.com about MBR-encoded partitions. My Hard disk uses a GUID encoding (thus not MBR encoding) for the partitions, and each partition is journalised HFS+ formatted ...
I saw also there are problems with spotlight combined with TM, and I inserted the external hard disk in the Spotlight exception list and reboot.
I think, perhaps, TimeMachine dislikes a single file over the whole hard disk ... Is there a way to know at which file the process stops ? Moreover, is there any file-size limit during the backup process ? I use VMWare Fusion 2 and I have a 20 Go file that is the PC's hard-disk ... and this file is not present in the TM Backup ... I saw some old versions of VMWare (<1.1 i think) forced TM not to save the HardDisk, but it does not seems to concern more recent versions ...
Is it simply a TM bug ? should wait for a next version ? or is there something wrong in what I do ?
Best Regards,
Mikhael Myara

Mikhael MYARA wrote:
as far as I know, TimeMachine does not process any compression ?
Hi, and welcome to the forums. Correct, TM does not do compression.
I think, perhaps, TimeMachine dislikes a single file over the whole hard disk ... Is there a way to know at which file the process stops ?
Corrupted files can cause problems for TM, but it will send error messages to your logs and a Failure message, as it should, rather than just skip the offending item(s). That does not appear to be what's happening here.
Moreover, is there any file-size limit during the backup process ?
No.
I use VMWare Fusion 2 and I have a 20 Go file that is the PC's hard-disk ... and this file is not present in the TM Backup
That file is probably listed in the +Do not back up+ panel of TM Preferences > Options. And you really don't want TM to back it up: since it's a single file to OSX, the smallest change to it will result in TM backing-up the entire file!
If you haven't found the Time Machine Buddy widget as Barry suggested, Click here to download it. It shows the messages from your logs for one TM backup run at a time, in a small window. If you're not clear about them, copy and post them here.
Most of what's "missing" is explained by that PC file.
Time Machine automatically excludes some other things, mostly caches, logs, workfiles, trash. These usually aren't significant, but if yours are quite large, it could explain the remaining difference.
From a Finder window, select Go > Go to folder, then type /var/ in the box provided. If it's not in List mode, select View > As List. Then select View > Show View Options, and click the +Calculate all sizes+ box.
See if any of the folders listed, particularly vm and logs, are in the multi-GB range. If so, that may be an indication of a problem, and also a reason for the difference in sizes. If either is very large, click the disclosure triangle to see the contents, and post the names of anything suspiciously large.
Caches are harder to measure, as they're in various places. One quick thing is, if you use Safari, to clear it's cache (Click Safari in the menubar, then +Empty cache+ ). See if that gains a lot of available space.
Of course, all these will only show how much is in use when you check, not when the backup was done. A Restart and/or some of the Mac's normal maintenance routines may reduce them.

Similar Messages

  • I don't understand why recently with the new "pages" my computer stops responding. When I go to fix some grammar all of a sudden the little colored circle begins to appear and won't go away I restart my computer.

    I don't understand why recently with the new "pages" my computer stops responding. When I go to fix some grammar all of a sudden the little colored circle begins to appear and won't go away I restart my computer.

    If you have more than one user account, these instructions must be carried out as an administrator.
    Launch the Console application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Console in the icon grid.
    Step 1
    Make sure the title of the Console window is All Messages. If it isn't, select All Messages from the SYSTEM LOG QUERIES menu on the left. If you don't see that menu, select
    View ▹ Show Log List
    from the menu bar.
    Enter "BOOT_TIME" (without the quotes) in the search box. Note the timestamps of those log messages, which refer to the times when the system was booted. Now clear the search box and scroll back in the log to the last boot time after  you had the problem. Select the messages logged before the boot, while the system was unresponsive or was failing to shut down. Copy them to the Clipboard by pressing the key combination command-C. Paste into a reply to this message (command-V). Please include the BOOT_TIME message at the end of the log extract.
    If there are runs of repeated messages, post only one example of each. Don’t post many repetitions of the same message.
    When posting a log extract, be selective. In most cases, a few dozen lines are more than enough.
    Please do not indiscriminately dump thousands of lines from the log into this discussion.
    Important: Some private information, such as your name, may appear in the log. Anonymize before posting.
    Step 2
    Still in Console, look under System Diagnostic Reports for crash or panic logs, and post the entire contents of the most recent one, if any. In the interest of privacy, I suggest you edit out the “Anonymous UUID,” a long string of letters, numbers, and dashes in the header of the report, if present (it may not be.) Please don’t post any other kind of report — it will be very long and not helpful.

  • I try to create my Account ID....and i don't understand why i have to put payment? before my friend create Account ID don't have to put payment they still can create account ID... and now i buy iphone but i don't have credit card that mind i can't not do

    Dear
    I try to create my Account ID....and i don't understand why i have to put payment? before my friend create Account ID don't have to put payment they still can create account ID... and now i buy iphone but i don't have credit card that mind i can't not do it

    Hi,
    This Link explains how to Set Up an Account ID...  without a credit card...
    http://support.apple.com/kb/HT2534
    Hope it helps,
    Cheers,

  • HT1695 my ipad2 will not connect to the internet, it says that it "unable to join"...but my laptop is connected to the internet.... i don't understand why all of a sudden it stopped connecting it dosent make sense

    my ipad2 will not connect to the internet, it says that it "unable to join"...but my laptop is connected to the internet.... i don't understand why all of a sudden it stopped connecting it dosent make sense.

    hmm, well I would say that raises the possibility of an issue with your ipad, and lessens one with your router.
    What version iOS are you using? Update
    Then Its time to try a restore.
    How to update your iOS device
    http://support.apple.com/kb/HT4623
    How to back up and restore (iCloud and iTunes)
    http://support.apple.com/kb/HT1766

  • When I try to share my iMovie video on to Youtube, an alert appears saying that my Youtube username and password are incorrect. I have shared successfully before so I don't understand why cannot do so now.

    When I try to share my iMovie video on to Youtube, an alert appears saying that my Youtube username and password are incorrect. I have shared successfully before so I don't understand why cannot do so now.

    Hey.
    Since you seem to have tried mostly everything, apart from exchanging the motherboard, I'd say you have at least one option left, and that's to reinstall Windows from the recovery partition / recovery discs. That might solve the problem, if this is due to a software-error. General updates etc. might not work to fix such problems, but a clean install should.
    If that doesn't help, I'd say the problem is somewhere either with the CPU or the motherboard, maybe bad connections or some sort of malfunction that prevents the computer from coming out of the 100% CPU usage.
    IT-technician, running my own company in Bergen, Norway
    Thinkpad T61, 8895CTO C2D 2Ghz/4GB/120GB SSD/1400x1050

  • ITunes downloaded movies, sound stops before end of movie.

    Sound stops before  end of my downloaded iTunes movies. I must stop the movie and start it again to get all the sound.

    I am having the same problem and there does not seem to be an answer. How do we get our money back for the rental? It's not the $4 but the principle ... Don't sell a product that does not work.

  • HT6312 I don't understand why you are holding our documents captive!

    How can you NOT make it backwards compatible!  I prefer not to install the latest IOS (as we've seen what happens, with the last IOS update)  before I am comfortable with the update. This is irresponsible and not customer friendly.  Basically I am S.O.L. if I have an older iPhone or iPad.  Thanks for being so customer friendly.

    James,
    Sorry I did not realize it was User to User.  Very funny, really.  Who would you like the check made out to?  LOL
    So I went to login to iCloud (on my PC) and I was forced to update to a different version of iCloud that would no longer allow any devices below IOS 8 access to the Pages area.  I just don't understand why thy (Apple developers) cannot make it backwards compatible. 

  • I don't know why win7 stop itunes working.

    Hello. I don't know why Windonws stops itune working when importing music.
    I considered what cause to do that,but I can't find out. Icould put music into ipod classic the day before yesterday. Now I can't.
    Pl give me right direction if anybody know this situation.
    thanks
    freakmeout

    There's a bug with 10.1.0.54 that is causing "iTunes has stopped working messages" (citing CoreAudioToolbox.dll in the Problem Reports for the error) for some folks when importing CDs with the AAC encoding, adding/converting files to AAC, and in some cases syncing devices (when the convert to 128 kbps AAC option is enabled).
    Short of rolling back your iTunes to 10.0.1.22 and your Apple Application Support to 1.3.2 (CoreAudioToolbox.dll is kept in the Apple Application Support program files), there's a few possible workarounds.
    (1) Change your importing prefs to use a different encoding (won't help with the device syncing variation though), and/or disable the convert to 128 kbps AAC when syncing option.
    (2) Replace your CoreAudioToolbox.dll version 7.9.4.0 with a 7.9.3.0 as per:
    http://discussions.apple.com/thread.jspa?messageID=12576816#12576816
    (3) Or, replace your CoreAudioToolbox.dll version 7.9.4.0 with a shadow copy of a 7.9.3.0 as per:
    http://discussions.apple.com/thread.jspa?messageID=12583499&#12583499
    (2 and 3 do help with the syncing variation.)

  • Ok so heres my question. I don't understand why this sign that say "Terms n Policy of the store have changed!" and it said to go agree the new terms and policy. I did that and it went back to the app store,but then it pops out again! What do i do?!

    Ok I don't understand why this sign that says "Terms and Policy of App store has changed!" So it tells me to go agree the new terms and policy. After i did that it returns to the App Store where i was before. And only like ten to five seconds it appears again! I just dont know what to do! Can anyone help me?!

    Sign out of iTunes and sign back in and try again. The issue is being reported as being solved....
    GB

  • HELP!! Don't understand why my new phone won't work!!

    HELP!! I just brought my iPhone home and went through the activation process. Everything was fine. Then all of a sudden, where the bars for service are... it says "Searching" and won't stop. I also can't get into anything. I press on the screen... nothing. I reset it twice... nothing. It's still doing it. I don't understand why and I can't speak to anyone in technical support right now. Has this happened to anyone else? I just want to cry because I bought this phone a few hours ago and it already is giving me crap! Someone help me!!!

    it's a new account, but I was sending texts and everything was fine. now all of a sudden it keeps going on and off and won't let me do anything. Just says "searching"
    it's really ticking me off!!! no one said there might be problems while activating it. I didn't pay this much money for a phone I can't even use!

  • Don't understand why WSDL isn't valid

    In Workshop 9.2, I'm developing an annotation-based web service. I imported my schemas and generated the xmlbeans, and after setting my input and output parameters in the service class, I tried to generate the WSDL from the service. For some reason, the WSDL is not valid, and I don't understand why. I'm sure it's a namespace issue, but I don't see it.
    The enclosed WSDL is somewhat paraphrased from the generated WSDL.
    On line 76 (marked with a comment), there is the first of several errors. It says:
    "The input element is referencing an undefined message 'overrideRequest'. Check that the message name and namespace are correct and that the message has been defined."
    Here is the WSDL:
    <?xml version='1.0' encoding='UTF-8'?>
    <s0:definitions name="SampleServiceDefinitions"
    targetNamespace="http://schemas.wamu.com/Sample.wsdl"
    xmlns=""
    xmlns:s0="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://schemas.wamu.com/Sample.wsdl"
    xmlns:ratings="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:questions="http://schemas.wamu.com/2006/07/QuestionsRequest"
    xmlns:s2="http://schemas.xmlsoap.org/wsdl/soap/">
    <s0:types>
    <xs:schema targetNamespace="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:ratings="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="loanSampleRequest">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:loanProperties"/>
    </xs:sequence>
    <xs:attribute name="modelVersion" type="xs:integer" use="optional"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="loanSampleResponse">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:loanProperties"/>
    <xs:element ref="ratings:messages"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="loanProperties">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" ref="ratings:property"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="property">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:key"/>
    <xs:element ref="ratings:value"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="key" type="xs:string"/>
    <xs:element name="value" type="xs:string"/>
    <xs:element name="messages">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" minOccurs="0" ref="ratings:message"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="message">
    <xs:complexType mixed="true">
    <xs:attribute name="level" type="xs:string"/>
    <xs:attribute name="fieldName" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    </s0:types>
    <s0:message name="overrideRequest">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:message name="overrideRequestResponse">
    <s0:part element="ratings:loanSampleResponse" name="parameters"/>
    </s0:message>
    <s0:message name="ratingsRequest">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:message name="ratingsRequestResponse">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:portType name="Sample">
    <s0:operation name="overrideRequest">
    <s0:input message="tns:overrideRequest"/> <!-- 76 -->
    <s0:output message="overrideRequestResponse"/>
    </s0:operation>
    <s0:operation name="ratingsRequest" parameterOrder="parameters">
    <s0:input message="ratingsRequest"/>
    <s0:output message="ratingsRequestResponse"/>
    </s0:operation>
    </s0:portType>
    <s0:binding name="SampleServiceSoapBinding" type="tns:Sample">
    <s2:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <s0:operation name="overrideRequest">
    <s2:operation soapAction="" style="document"/>
    <s0:input>
    <s2:body parts="parameters" use="literal"/>
    </s0:input>
    <s0:output>
    <s2:body parts="parameters" use="literal"/>
    </s0:output>
    </s0:operation>
    <s0:operation name="ratingsRequest">
    <s2:operation soapAction="" style="document"/>
    <s0:input>
    <s2:body parts="parameters" use="literal"/>
    </s0:input>
    <s0:output>
    <s2:body parts="parameters" use="literal"/>
    </s0:output>
    </s0:operation>
    </s0:binding>
    <s0:service name="SampleService">
    <s0:port binding="tns:SampleServiceSoapBinding" name="SampleSoapPort">
    <s2:address location="http://localhost:7001/Sample/Sample"/>
    </s0:port>
    </s0:service>
    </s0:definitions>
    --------------------

    After I made these changes and re-validated, I get a dialog that says "The WSDL file is valid however warnings have been issued. See the Problems view for a list of the validation warnings", and I see the following in the Problems list:
    IWAE0053E An internal error has occurred running validation on project:RiskRatingContainer]:RiskRatingContainer, check the log file for details
    In in my WSDL editor, the lines in question still have a red circle with a white "x" in the left margin, and the tooltip still reports the same errors as before.
    In the "Error Log" view, I see the following:
    *** ERROR ***: Thu Feb 22 12:10:09 PST 2007 org.eclipse.wst.validation.internal.core.ValidationException: IWAE0053E An internal error has occurred running validation on project:RiskRatingContainer]:RiskRatingContainer, check the log file for details
    Just in case, I'll include my current WSDL again here.
    <?xml version='1.0' encoding='UTF-8'?>
    <s0:definitions name="SampleServiceDefinitions"
    targetNamespace="http://schemas.wamu.com/Sample.wsdl"
    xmlns=""
    xmlns:s0="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://schemas.wamu.com/Sample.wsdl"
    xmlns:ratings="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:questions="http://schemas.wamu.com/2006/07/QuestionsRequest"
    xmlns:s2="http://schemas.xmlsoap.org/wsdl/soap/">
    <s0:types>
    <xs:schema targetNamespace="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:ratings="http://schemas.wamu.com/2006/07/LoanSampleRequest"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="loanSampleRequest">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:loanProperties"/>
    </xs:sequence>
    <xs:attribute name="modelVersion" type="xs:integer" use="optional"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="loanSampleResponse">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:loanProperties"/>
    <xs:element ref="ratings:messages"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="loanProperties">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" ref="ratings:property"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="property">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="ratings:key"/>
    <xs:element ref="ratings:value"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="key" type="xs:string"/>
    <xs:element name="value" type="xs:string"/>
    <xs:element name="messages">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" minOccurs="0" ref="ratings:message"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="message">
    <xs:complexType mixed="true">
    <xs:attribute name="level" type="xs:string"/>
    <xs:attribute name="fieldName" type="xs:string"/>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    </s0:types>
    <s0:message name="overrideRequest">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:message name="overrideRequestResponse">
    <s0:part element="ratings:loanSampleResponse" name="parameters"/>
    </s0:message>
    <s0:message name="ratingsRequest">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:message name="ratingsRequestResponse">
    <s0:part element="ratings:loanSampleRequest" name="parameters"/>
    </s0:message>
    <s0:portType name="Sample">
    <s0:operation name="overrideRequest">
    <s0:input message="tns:overrideRequest"/> <!-- 76 -->
    <s0:output message="tns:overrideRequestResponse"/>
    </s0:operation>
    <s0:operation name="ratingsRequest" parameterOrder="parameters">
    <s0:input message="tns:ratingsRequest"/>
    <s0:output message="tns:ratingsRequestResponse"/>
    </s0:operation>
    </s0:portType>
    <s0:binding name="SampleServiceSoapBinding" type="tns:Sample">
    <s2:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <s0:operation name="overrideRequest">
    <s2:operation soapAction="" style="document"/>
    <s0:input>
    <s2:body parts="parameters" use="literal"/>
    </s0:input>
    <s0:output>
    <s2:body parts="parameters" use="literal"/>
    </s0:output>
    </s0:operation>
    <s0:operation name="ratingsRequest">
    <s2:operation soapAction="" style="document"/>
    <s0:input>
    <s2:body parts="parameters" use="literal"/>
    </s0:input>
    <s0:output>
    <s2:body parts="parameters" use="literal"/>
    </s0:output>
    </s0:operation>
    </s0:binding>
    <s0:service name="SampleService">
    <s0:port binding="tns:SampleServiceSoapBinding" name="SampleSoapPort">
    <s2:address location="http://localhost:7001/Sample/Sample"/>
    </s0:port>
    </s0:service>
    </s0:definitions>
    ---------------------------

  • I don't understand why a person who has been with a company for 6 years cant get a simple upgrade can anyone help figure that out?

    I don't understand why a person who has been with a company for 6 years cant get a simple upgrade can anyone help figure that out?

    Are you trying to get an upgrade before you're actually eligible? If that is the case, it doesn't matter if you've been a customer for 6 years or 6 days...if you're not eligible then you're not eligible. Some of your possible options are to pay full retail, do an early edge up (if you are eligible for that option), or buying a phone from some other source to use.
    If your situation is something different then it might help to share that. The options may still be the same but it helps to know what exactly the issue is.

  • I am new to Final Cut Express and don't understand why I am unable to drag transitions into Canvas? Something wrong in my setup? It's not the overlays they are "on" so can anyone advise me please?

    I am new to Final Cut Express and don't understand why I am unable to drag transitions into Canvas? Something wrong in my setup? It's not the overlays they are "on" so can anyone advise me please, by the way the "L" doesn't appear in the bottom left hand corner either? and by the way how can I get rid of that irritating Blue badge saying "AutoFill your contact details" all mine are in "address book" already!

    You can't drag a transition into the canvas. If you're dragginmg a transition from the effects tab you drag it between the edit point of two clips in the timeline.
    Make sure show edit overlays is turned on in the Canvas view popup.

  • Why is this an error???  I don't understand why it is... Help Please

    Hi,
    Ok, I'll preface this by saying there's a lotta code pasted in here but it really quite an easy question, I just need to post all the code so you understand where what came from.
    Now.............the question I'm trying to do is to create an applet that has 2 buttons -- each button when clicked opens an application (one is a simple calculator, the other a Mortgage calculation app). When you click one of the buttons (calc or mortgage), that app opens infront of the 2 button menu so its in "focus". The button on the 2 button menu then switches to a "hide app X" button (ie: "Mortgage", changes to "Hide Mortgage"). Thus if you click the hide button, the app that was opened is hidden, and then that "hide" button switches back to the original "app X" button. Pretty simple.
    Now, I have from my text book an example that does exactly this, with the simple calculator already in it, and with another app (a traffic light thing) where the Mortgage should be in my final product. I also already have the Mortgage applet I need to insert from another book example in place of that Traffic Light portion.
    Now, common sense would dictate that I should be able to just copy my code for the Mortgage applet into the example that has the 2 button menu structure, and overwrite the code I want to get rid of (the traffic light) with the mortgage code & rename the menu buttons. Right?? A simple switch of one thing for another... but therein lies my problem.
    I copied all the Mortgage code in correctly over the traffic lights, switched the button names, tried to compile it but I get one error....
    Exercise12_17.java:52: cannot resolve symbol
    symbol  : method pack ()
    location: class MortgageApplet
            mortgageAppletFrame.pack();I don't understand why..... mortgageAppletFrame.pack(); was a simple rewrite from lightsFrame.pack(); like every other line...... it should work. I've gone over it for 2 days......... Anyone know why it comes up as an error???
    Below, in order going down is (1)my code with the 1 error I can't solve, (2)the original menu example I tried to edit, and (3)the Mortgage app code...........
    Does anyone know what my error is?? Help or a hint would be greatly appreciated........ Thanks.
    My erroring app.......
    // Exercise12_17.java: Create multiple windows
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.border.TitledBorder;
    public class Exercise12_17 extends JFrame implements ActionListener {
      // Declare and create a frame: an instance of MenuDemo
      MenuDemo calcFrame = new MenuDemo();
      // Declare and create a frame: an instance of RadioButtonDemo
      MortgageApplet mortgageAppletFrame = new MortgageApplet();
      // Declare two buttons for displaying frames
      private JButton jbtCalc;
      private JButton jbtMortgage;
      public static void main(String[] args) {
        Exercise12_17 frame = new Exercise12_17();
        frame.setSize( 400, 70 );
        frame.setTitle("Exercise 11.8: Multiple Windows Demo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
      public Exercise12_17() {
        // Add buttons to the main frame
        getContentPane().setLayout(new FlowLayout());
        getContentPane().add(jbtCalc = new JButton("Simple Calculator"));
         getContentPane().add(jbtMortgage = new JButton("Mortgage"));
        // Register the main frame as listener for the buttons
        jbtCalc.addActionListener(this);
         jbtMortgage.addActionListener(this);
      public void actionPerformed(ActionEvent e) {
        String arg = e.getActionCommand();
        if (e.getSource() instanceof JButton)
          if ("Simple Calculator".equals(arg)) {
            //show the MenuDemo frame
            jbtCalc.setText("Hide Simple Calculator");
            calcFrame.pack();
            calcFrame.setVisible(true);
          else if ("Hide Simple Calculator".equals(arg)) {
            calcFrame.setVisible(false);
            jbtCalc.setText("Simple Calculator");
          else if ("Mortgage".equals(arg)) {
            //show the CheckboxGroup frame
            mortgageAppletFrame.pack();
            jbtMortgage.setText("Hide Mortgage");
            mortgageAppletFrame.setVisible(true);
          else if ("Hide Mortgage".equals(arg)) {
            mortgageAppletFrame.setVisible(false);
            jbtMortgage.setText("Mortgage");
      class MortgageApplet extends JApplet
      implements ActionListener {
      // Declare and create text fields for interest rate
      // year, loan amount, monthly payment, and total payment
      private JTextField jtfAnnualInterestRate = new JTextField();
      private JTextField jtfNumOfYears = new JTextField();
      private JTextField jtfLoanAmount = new JTextField();
      private JTextField jtfMonthlyPayment = new JTextField();
      private JTextField jtfTotalPayment = new JTextField();
      // Declare and create a Compute Mortgage button
      private JButton jbtComputeMortgage = new JButton("Compute Mortgage");
      /** Initialize user interface */
      public void init() {
        // Set properties on the text fields
        jtfMonthlyPayment.setEditable(false);
        jtfTotalPayment.setEditable(false);
        // Right align text fields
        jtfAnnualInterestRate.setHorizontalAlignment(JTextField.RIGHT);
        jtfNumOfYears.setHorizontalAlignment(JTextField.RIGHT);
        jtfLoanAmount.setHorizontalAlignment(JTextField.RIGHT);
        jtfMonthlyPayment.setHorizontalAlignment(JTextField.RIGHT);
        jtfTotalPayment.setHorizontalAlignment(JTextField.RIGHT);
        // Panel p1 to hold labels and text fields
        JPanel p1 = new JPanel();
        p1.setLayout(new GridLayout(5, 2));
        p1.add(new Label("Annual Interest Rate"));
        p1.add(jtfAnnualInterestRate);
        p1.add(new Label("Number of Years"));
        p1.add(jtfNumOfYears);
        p1.add(new Label("Loan Amount"));
        p1.add(jtfLoanAmount);
        p1.add(new Label("Monthly Payment"));
        p1.add(jtfMonthlyPayment);
        p1.add(new Label("Total Payment"));
        p1.add(jtfTotalPayment);
        p1.setBorder(new
          TitledBorder("Enter interest rate, year and loan amount"));
        // Panel p2 to hold the button
        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
        p2.add(jbtComputeMortgage);
        // Add the components to the applet
        getContentPane().add(p1, BorderLayout.CENTER);
        getContentPane().add(p2, BorderLayout.SOUTH);
        // Register listener
        jbtComputeMortgage.addActionListener(this);
      /** Handle the "Compute Mortgage" button */
      public void actionPerformed(ActionEvent e) {
        if (e.getSource() == jbtComputeMortgage) {
          // Get values from text fields
          double interest = (Double.valueOf(
            jtfAnnualInterestRate.getText())).doubleValue();
          int year =
            (Integer.valueOf(jtfNumOfYears.getText())).intValue();
          double loan =
            (Double.valueOf(jtfLoanAmount.getText())).doubleValue();
          // Create a mortgage object
          Mortgage m = new Mortgage(interest, year, loan);
          // Display monthly payment and total payment
          jtfMonthlyPayment.setText(String.valueOf(m.monthlyPayment()));
          jtfTotalPayment.setText(String.valueOf(m.totalPayment()));
    class MenuDemo extends JFrame implements ActionListener {
      // Text fields for Number 1, Number 2, and Result
      private JTextField jtfNum1, jtfNum2, jtfResult;
      // Buttons "Add", "Subtract", "Multiply" and "Divide"
      private JButton jbtAdd, jbtSub, jbtMul, jbtDiv;
      // Menu items "Add", "Subtract", "Multiply","Divide" and "Close"
      private JMenuItem jmiAdd, jmiSub, jmiMul, jmiDiv, jmiClose;
      /** Main method */
      public static void main(String[] args) {
        MenuDemo frame = new MenuDemo();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
        frame.setVisible(true);
      /** Default constructor */
      public MenuDemo() {
        setTitle("Menu Demo");
        // Create menu bar
        JMenuBar jmb = new JMenuBar();
        // Set menu bar to the frame
        setJMenuBar(jmb);
        // Add menu "Operation" to menu bar
        JMenu operationMenu = new JMenu("Operation");
        operationMenu.setMnemonic('O');
        jmb.add(operationMenu);
        // Add menu "Exit" in menu bar
        JMenu exitMenu = new JMenu("Exit");
        exitMenu.setMnemonic('E');
        jmb.add(exitMenu);
        // Add menu items with mnemonics to menu "Operation"
        operationMenu.add(jmiAdd= new JMenuItem("Add", 'A'));
        operationMenu.add(jmiSub = new JMenuItem("Subtract", 'S'));
        operationMenu.add(jmiMul = new JMenuItem("Multiply", 'M'));
        operationMenu.add(jmiDiv = new JMenuItem("Divide", 'D'));
        exitMenu.add(jmiClose = new JMenuItem("Close", 'C'));
        // Set keyboard accelerators
        jmiAdd.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_A, ActionEvent.CTRL_MASK));
        jmiSub.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.CTRL_MASK));
        jmiMul.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_M, ActionEvent.CTRL_MASK));
        jmiDiv.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_D, ActionEvent.CTRL_MASK));
        // Panel p1 to hold text fields and labels
        JPanel p1 = new JPanel();
        p1.setLayout(new FlowLayout());
        p1.add(new JLabel("Number 1"));
        p1.add(jtfNum1 = new JTextField(3));
        p1.add(new JLabel("Number 2"));
        p1.add(jtfNum2 = new JTextField(3));
        p1.add(new JLabel("Result"));
        p1.add(jtfResult = new JTextField(4));
        jtfResult.setEditable(false);
        // Panel p2 to hold buttons
        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout());
        p2.add(jbtAdd = new JButton("Add"));
        p2.add(jbtSub = new JButton("Subtract"));
        p2.add(jbtMul = new JButton("Multiply"));
        p2.add(jbtDiv = new JButton("Divide"));
        // Add panels to the frame
        getContentPane().setLayout(new BorderLayout());
        getContentPane().add(p1, BorderLayout.CENTER);
        getContentPane().add(p2, BorderLayout.SOUTH);
        // Register listeners
        jbtAdd.addActionListener(this);
        jbtSub.addActionListener(this);
        jbtMul.addActionListener(this);
        jbtDiv.addActionListener(this);
        jmiAdd.addActionListener(this);
        jmiSub.addActionListener(this);
        jmiMul.addActionListener(this);
        jmiDiv.addActionListener(this);
        jmiClose.addActionListener(this);
      /** Handle ActionEvent from buttons and menu items */
      public void actionPerformed(ActionEvent e) {
        String actionCommand = e.getActionCommand();
        // Handle button events
        if (e.getSource() instanceof JButton) {
          if ("Add".equals(actionCommand))
            calculate('+');
          else if ("Subtract".equals(actionCommand))
            calculate('-');
          else if ("Multiply".equals(actionCommand))
            calculate('*');
          else if ("Divide".equals(actionCommand))
            calculate('/');
        else if (e.getSource() instanceof JMenuItem) {
          // Handle menu item events
          if ("Add".equals(actionCommand))
            calculate('+');
          else if ("Subtract".equals(actionCommand))
            calculate('-');
          else if ("Multiply".equals(actionCommand))
            calculate('*');
          else if ("Divide".equals(actionCommand))
            calculate('/');
          else if ("Close".equals(actionCommand))
            System.exit(0);
      /** Calculate and show the result in jtfResult */
      private void calculate(char operator) {
        // Obtain Number 1 and Number 2
        int num1 = (Integer.parseInt(jtfNum1.getText().trim()));
        int num2 = (Integer.parseInt(jtfNum2.getText().trim()));
        int result = 0;
        // Perform selected operation
        switch (operator) {
          case '+': result = num1 + num2;
                    break;
          case '-': result = num1 - num2;
                    break;
          case '*': result = num1 * num2;
                    break;
          case '/': result = num1 / num2;
        // Set result in jtfResult
        jtfResult.setText(String.valueOf(result));
    Original 2 button menu example....
    // Exercise11_8.java: Create multiple windows
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class Exercise11_8 extends JFrame implements ActionListener {
      // Declare and create a frame: an instance of MenuDemo
      MenuDemo calcFrame = new MenuDemo();
      // Declare and create a frame: an instance of RadioButtonDemo
      RadioButtonDemo lightsFrame = new RadioButtonDemo();
      // Declare two buttons for displaying frames
      private JButton jbtCalc;
      private JButton jbtLights;
      public static void main(String[] args) {
        Exercise11_8 frame = new Exercise11_8();
        frame.setSize( 400, 70 );
        frame.setTitle("Exercise 11.8: Multiple Windows Demo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
      public Exercise11_8() {
        // Add buttons to the main frame
        getContentPane().setLayout(new FlowLayout());
        getContentPane().add(jbtCalc = new JButton("Simple Calculator"));
        getContentPane().add(jbtLights = new JButton("Traffic Lights"));
        // Register the main frame as listener for the buttons
        jbtCalc.addActionListener(this);
        jbtLights.addActionListener(this);
      public void actionPerformed(ActionEvent e) {
        String arg = e.getActionCommand();
        if (e.getSource() instanceof JButton)
          if ("Simple Calculator".equals(arg)) {
            //show the MenuDemo frame
            jbtCalc.setText("Hide Simple Calculator");
            calcFrame.pack();
            calcFrame.setVisible(true);
          else if ("Hide Simple Calculator".equals(arg)) {
            calcFrame.setVisible(false);
            jbtCalc.setText("Simple Calculator");
          else if ("Traffic Lights".equals(arg)) {
            //show the CheckboxGroup frame
            lightsFrame.pack();
            jbtLights.setText("Hide Traffic Lights");
            lightsFrame.setVisible(true);
          else if ("Hide Traffic Lights".equals(arg)) {
            lightsFrame.setVisible(false);
            jbtLights.setText("Traffic Lights");
         class RadioButtonDemo extends JFrame
      implements ItemListener {
      // Declare radio buttons
      private JRadioButton jrbRed, jrbYellow, jrbGreen;
      // Declare a radio button group
      private ButtonGroup btg = new ButtonGroup();
      // Declare a traffic light display panel
      private Light light;
      /** Main method */
      public static void main(String[] args) {
        RadioButtonDemo frame = new RadioButtonDemo();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(250, 170);
        frame.setVisible(true);
      /** Default constructor */
      public RadioButtonDemo() {
        setTitle("RadioButton Demo");
        // Add traffic light panel to panel p1
        JPanel p1 = new JPanel();
        p1.setSize(200, 200);
        p1.setLayout(new FlowLayout(FlowLayout.CENTER));
        light = new Light();
        light.setSize(40, 90);
        p1.add(light);
        // Put the radio button in Panel p2
        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout());
        p2.add(jrbRed = new JRadioButton("Red", true));
        p2.add(jrbYellow = new JRadioButton("Yellow", false));
        p2.add(jrbGreen = new JRadioButton("Green", false));
        // Set keyboard mnemonics
        jrbRed.setMnemonic('R');
        jrbYellow.setMnemonic('Y');
        jrbGreen.setMnemonic('G');
        // Group radio buttons
        btg.add(jrbRed);
        btg.add(jrbYellow);
        btg.add(jrbGreen);
        // Place p1 and p2 in the frame
        getContentPane().setLayout(new BorderLayout());
        getContentPane().add(p1, BorderLayout.CENTER);
        getContentPane().add(p2, BorderLayout.SOUTH);
        // Register listeners for check boxes
        jrbRed.addItemListener(this);
        jrbYellow.addItemListener(this);
        jrbGreen.addItemListener(this);
      /** Handle checkbox events */
      public void itemStateChanged(ItemEvent e) {
        if (jrbRed.isSelected())
          light.turnOnRed(); // Set red light
        if (jrbYellow.isSelected())
          light.turnOnYellow(); // Set yellow light
        if (jrbGreen.isSelected())
          light.turnOnGreen(); // Set green light
    // Three traffic lights shown in a panel
    class Light extends JPanel {
      private boolean red;
      private boolean yellow;
      private boolean green;
      /** Default constructor */
      public Light() {
        turnOnGreen();
      /** Set red light on */
      public void turnOnRed() {
        red = true;
        yellow = false;
        green = false;
        repaint();
      /** Set yellow light on */
      public void turnOnYellow() {
        red = false;
        yellow = true;
        green = false;
        repaint();
      /** Set green light on */
      public void turnOnGreen() {
        red = false;
        yellow = false;
        green = true;
        repaint();
      /** Display lights */
      public void paintComponent(Graphics g) {
        super.paintComponent(g);
        if (red) {
          g.setColor(Color.red);
          g.fillOval(10, 10, 20, 20);
          g.setColor(Color.black);
          g.drawOval(10, 35, 20, 20);
          g.drawOval(10, 60, 20, 20);
          g.drawRect(5, 5, 30, 80);
        else if (yellow) {
          g.setColor(Color.yellow);
          g.fillOval(10, 35, 20, 20);
          g.setColor(Color.black);
          g.drawRect(5, 5, 30, 80);
          g.drawOval(10, 10, 20, 20);
          g.drawOval(10, 60, 20, 20);
        else if (green) {
          g.setColor(Color.green);
          g.fillOval(10, 60, 20, 20);
          g.setColor(Color.black);
          g.drawRect(5, 5, 30, 80);
          g.drawOval(10, 10, 20, 20);
          g.drawOval(10, 35, 20, 20);
        else {
          g.setColor(Color.black);
          g.drawRect(5, 5, 30, 80);
          g.drawOval(10, 10, 20, 20);
          g.drawOval(10, 35, 20, 20);
          g.drawOval(10, 60, 20, 20);
      /** Set preferred size */
      public Dimension getPreferredSize() {
        return new Dimension(40, 90);
    class MenuDemo extends JFrame implements ActionListener {
      // Text fields for Number 1, Number 2, and Result
      private JTextField jtfNum1, jtfNum2, jtfResult;
      // Buttons "Add", "Subtract", "Multiply" and "Divide"
      private JButton jbtAdd, jbtSub, jbtMul, jbtDiv;
      // Menu items "Add", "Subtract", "Multiply","Divide" and "Close"
      private JMenuItem jmiAdd, jmiSub, jmiMul, jmiDiv, jmiClose;
      /** Main method */
      public static void main(String[] args) {
        MenuDemo frame = new MenuDemo();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
        frame.setVisible(true);
      /** Default constructor */
      public MenuDemo() {
        setTitle("Menu Demo");
        // Create menu bar
        JMenuBar jmb = new JMenuBar();
        // Set menu bar to the frame
        setJMenuBar(jmb);
        // Add menu "Operation" to menu bar
        JMenu operationMenu = new JMenu("Operation");
        operationMenu.setMnemonic('O');
        jmb.add(operationMenu);
        // Add menu "Exit" in menu bar
        JMenu exitMenu = new JMenu("Exit");
        exitMenu.setMnemonic('E');
        jmb.add(exitMenu);
        // Add menu items with mnemonics to menu "Operation"
        operationMenu.add(jmiAdd= new JMenuItem("Add", 'A'));
        operationMenu.add(jmiSub = new JMenuItem("Subtract", 'S'));
        operationMenu.add(jmiMul = new JMenuItem("Multiply", 'M'));
        operationMenu.add(jmiDiv = new JMenuItem("Divide", 'D'));
        exitMenu.add(jmiClose = new JMenuItem("Close", 'C'));
        // Set keyboard accelerators
        jmiAdd.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_A, ActionEvent.CTRL_MASK));
        jmiSub.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.CTRL_MASK));
        jmiMul.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_M, ActionEvent.CTRL_MASK));
        jmiDiv.setAccelerator(
          KeyStroke.getKeyStroke(KeyEvent.VK_D, ActionEvent.CTRL_MASK));
        // Panel p1 to hold text fields and labels
        JPanel p1 = new JPanel();
        p1.setLayout(new FlowLayout());
        p1.add(new JLabel("Number 1"));
        p1.add(jtfNum1 = new JTextField(3));
        p1.add(new JLabel("Number 2"));
        p1.add(jtfNum2 = new JTextField(3));
        p1.add(new JLabel("Result"));
        p1.add(jtfResult = new JTextField(4));
        jtfResult.setEditable(false);
        // Panel p2 to hold buttons
        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout());
        p2.add(jbtAdd = new JButton("Add"));
        p2.add(jbtSub = new JButton("Subtract"));
        p2.add(jbtMul = new JButton("Multiply"));
        p2.add(jbtDiv = new JButton("Divide"));
        // Add panels to the frame
        getContentPane().setLayout(new BorderLayout());
        getContentPane().add(p1, BorderLayout.CENTER);
        getContentPane().add(p2, BorderLayout.SOUTH);
        // Register listeners
        jbtAdd.addActionListener(this);
        jbtSub.addActionListener(this);
        jbtMul.addActionListener(this);
        jbtDiv.addActionListener(this);
        jmiAdd.addActionListener(this);
        jmiSub.addActionListener(this);
        jmiMul.addActionListener(this);
        jmiDiv.addActionListener(this);
        jmiClose.addActionListener(this);
      /** Handle ActionEvent from buttons and menu items */
      public void actionPerformed(ActionEvent e) {
        String actionCommand = e.getActionCommand();
        // Handle button events
        if (e.getSource() instanceof JButton) {
          if ("Add".equals(actionCommand))
            calculate('+');
          else if ("Subtract".equals(actionCommand))
            calculate('-');
          else if ("Multiply".equals(actionCommand))
            calculate('*');
          else if ("Divide".equals(actionCommand))
            calculate('/');
        else if (e.getSource() instanceof JMenuItem) {
          // Handle menu item events
          if ("Add".equals(actionCommand))
            calculate('+');
          else if ("Subtract".equals(actionCommand))
            calculate('-');
          else if ("Multiply".equals(actionCommand))
            calculate('*');
          else if ("Divide".equals(actionCommand))
            calculate('/');
          else if ("Close".equals(actionCommand))
            System.exit(0);
      /** Calculate and show the result in jtfResult */
      private void calculate(char operator) {
        // Obtain Number 1 and Number 2
        int num1 = (Integer.parseInt(jtfNum1.getText().trim()));
        int num2 = (Integer.parseInt(jtfNum2.getText().trim()));
        int result = 0;
        // Perform selected operation
        switch (operator) {
          case '+': result = num1 + num2;
                    break;
          case '-': result = num1 - num2;
                    break;
          case '*': result = num1 * num2;
                    break;
          case '/': result = num1 / num2;
        // Set result in jtfResult
        jtfResult.setText(String.valueOf(result));
    Mortgage applet code....
    // MortgageApplet.java: Applet for computing mortgage payments
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.border.TitledBorder;
    public class MortgageApplet extends JApplet
      implements ActionListener {
      // Declare and create text fields for interest rate
      // year, loan amount, monthly payment, and total payment
      private JTextField jtfAnnualInterestRate = new JTextField();
      private JTextField jtfNumOfYears = new JTextField();
      private JTextField jtfLoanAmount = new JTextField();
      private JTextField jtfMonthlyPayment = new JTextField();
      private JTextField jtfTotalPayment = new JTextField();
      // Declare and create a Compute Mortgage button
      private JButton jbtComputeMortgage = new JButton("Compute Mortgage");
      /** Initialize user interface */
      public void init() {
        // Set properties on the text fields
        jtfMonthlyPayment.setEditable(false);
        jtfTotalPayment.setEditable(false);
        // Right align text fields
        jtfAnnualInterestRate.setHorizontalAlignment(JTextField.RIGHT);
        jtfNumOfYears.setHorizontalAlignment(JTextField.RIGHT);
        jtfLoanAmount.setHorizontalAlignment(JTextField.RIGHT);
        jtfMonthlyPayment.setHorizontalAlignment(JTextField.RIGHT);
        jtfTotalPayment.setHorizontalAlignment(JTextField.RIGHT);
        // Panel p1 to hold labels and text fields
        JPanel p1 = new JPanel();
        p1.setLayout(new GridLayout(5, 2));
        p1.add(new Label("Annual Interest Rate"));
        p1.add(jtfAnnualInterestRate);
        p1.add(new Label("Number of Years"));
        p1.add(jtfNumOfYears);
        p1.add(new Label("Loan Amount"));
        p1.add(jtfLoanAmount);
        p1.add(new Label("Monthly Payment"));
        p1.add(jtfMonthlyPayment);
        p1.add(new Label("Total Payment"));
        p1.add(jtfTotalPayment);
        p1.setBorder(new
          TitledBorder("Enter interest rate, year and loan amount"));
        // Panel p2 to hold the button
        JPanel p2 = new JPanel();
        p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
        p2.add(jbtComputeMortgage);
        // Add the components to the applet
        getContentPane().add(p1, BorderLayout.CENTER);
        getContentPane().add(p2, BorderLayout.SOUTH);
        // Register listener
        jbtComputeMortgage.addActionListener(this);
      /** Handle the "Compute Mortgage" button */
      public void actionPerformed(ActionEvent e) {
        if (e.getSource() == jbtComputeMortgage) {
          // Get values from text fields
          double interest = (Double.valueOf(
            jtfAnnualInterestRate.getText())).doubleValue();
          int year =
            (Integer.valueOf(jtfNumOfYears.getText())).intValue();
          double loan =
            (Double.valueOf(jtfLoanAmount.getText())).doubleValue();
          // Create a mortgage object
          Mortgage m = new Mortgage(interest, year, loan);
          // Display monthly payment and total payment
          jtfMonthlyPayment.setText(String.valueOf(m.monthlyPayment()));
          jtfTotalPayment.setText(String.valueOf(m.totalPayment()));
    }

    Does it have to be an applet?
    If you want the same behaviour as in the code with traffic lights, change
    class MortgageApplet extends JApplet implements ActionListener {
    to
    class MortgageApplet extends JFrame implements ActionListener {
    and change
    public void init() {
    to
    public MortgageApplet() {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • From what I understand RAW photos are supposed to open in raw in photoshop CC.  I don't understand why my RAW photos don't open in RAW in photoshop CC or Lightroom 5

    From what I understand RAW photos are supposed to open in raw in photoshop CC. I don't understand why my RAW photos don't open in RAW in photoshop CC or Lightroom 5

    Has the behavior changed compared to how it used to open ? If so, do you refer to the Camera RAW window similar to this: http://screenshots.en.sftcdn.net/en/scrn/78000/78026/adobe-camera-raw-22.jpg
    What is the file extension of your photos ?
    In Lightroom, there is no special way of opening a RAW file vs. JPEG. They all open the same. What is the Lightroom behavior ? Can you post a screenshot ?

Maybe you are looking for