Scalable frame?

Is there any way to have one frame of a frameset rescale
according to whatever its current content is? So, if there's a 150
pixel wide table of contents inside the left-most frame but then
the user clicks a button that fills that left-most frame with new,
wider (or narrower) content, the frame resizes. (I know the frame
next to it will also resize, and that's okay.)
My page is at:
http://www.descom.org/okay/home.html
The frameset has a blank left frame on the homepage, but this
frame gets filled with content anytime you click on a link above.
Problem is, as you'll see, the homepage is misaligned because the
left frame seems to need its width defined.
Thanks for all advice (other than, "don't use frames." I've
tried this using CSS but can't get it consistent across all
browsers and it needs to be.)

Sorry, I can't answer your question...but I don't really see
a good reason to use a frame with that design. It will work better
and simpler by just using flat pages.

Similar Messages

  • Adjust Slideshow (autoviewer) position withih a page frame

    Can anybody tell me...
    Once you've created a page frame how do you position the slideshow or item within that frame? which file affects it, and what setting?
    Example
    http://web.mac.com/coreydee/iWeb/DEMO/Photo%20Page.html

    You'll basically have to figure out what the minimum dimensions are for the slideshow you want and then make your textbox/iframe dimensions at least as big. Think of the textbox/iframe as a mask or a cutout through which your slideshow is being displayed. If the slideshow is bigger than the cutout, then parts of it will be cutoff.
    The original AutoViewer files should be completely scalable to whatever dimensions you choose. But if you use iPhoto Export, it may disable this feature. What you can do is to use something else to produce your AutoViewer slideshow, like WebExport ( http://mountainmandan.net/webexport/ ) which purportedly leaves the scaling capability intact. Or you can go to http://www.airtightinteractive.com and download the original AutoViewer files and then replace the following files with the ones iPhotoExport gives you...
    gallerydata.xml
    images folder
    Here's an example of the scaling...
    This is the displayed page with the iframe...
    http://web.mac.com/jwtseng/iWeb/kate/MyWorld/526EAB19-F722-4899-8D92-43849B193C6 1.html
    And this is the direct link to the slideshow...
    http://homepage.mac.com/jwtseng/playground/
    Try dragging the browser window smaller and larger on the slideshow page to see the automatic scaling capabilities of AutoViewer (and most Flash content).

  • Need help on Internationalization..(scalability issue)

    I am currently developing frame work for implementing internationalization in my project. I am following the approach of Properties file. I want to know how far it is scalable. Can some one suggest me some supporting document that says how it is scalable.
    help needed asap.
    TIA,
    CK

    I am currently developing frame work for implementing
    internationalization in my project. I am following the
    approach of Properties file. I want to know how far it
    is scalable. Can some one suggest me some supporting
    document that says how it is scalable.
    help needed asap.
    TIA,
    CKWell, I cant point you to a document - and I doubt such a document exist. I will however say that I have built i18N applications relying heavily on ResourceBundles (each view using on average maybe 40 - 100 lookups - from jsp custom actions) and I have seen no performance problems. In addition I would like to point out that it is trivial to stage a performance test verifying this for yourself - do it...

  • Jog Shuttle - Rewind Skips frames

    I am trying to figure out how to encode in Quicktime a mpeg4 or h.264 movie with a smooth rewind (shuttle). I am coaching a sport and trying to teach with the video. After encoding, the video plays fine and actually the fast forwards goes smoothly. But the rewind skips frames . I capture from my camera in dv (avi file) with 720x480 and 29.97 f/s with about 3m bit rate. I don't care the size after I encode. When I play the avi file in QT it rewinds fine and QT goes through each frame, but when I encode to mpeg4 or h.264, the video skips on rewind. Any help would be awesome!!!
    P4 - 2.4 gig 1mb ram (750 mb free)   Windows XP Pro   I have nothing running in the background

    Sorry Kyn Drake, here's the def. of what a b-frame and bidirectional frame are....
    Bidirectional Frames:
    Using bidirectional prediction increases the compression efficiency and the quality of your video. A bidirectional frame is a frame created by the compressor and inserted between intraframes and/or interframes. The compressor analyzes the frames before and after the bidirectional frame and then creates and inserts a frame based on the average quality of both.
    Has nothing to do with playing a video backwards...
    B-Frames:
    The advantages to using the B-Frames are to achieve higher quality of the video and the ability to have playback scalability. By default, the B-Frame setting is set to off. The options in the drop-down menu are: off, Auto, 1, and 2.

  • Open and edit animated .gif while preserving frame timing

    CS4 Premium Design Edition, Win XP
    I was disappointed with the removal of Image Ready from CS3 because although some of the functionality was placed into Photoshop 10, there was no way to open and edit an existing animated .gif while preserving the timing of each individual frame. I was told on the PS forum at the time that I really needed to use Fireworks. I resented that, because I was very happy with Image Ready and I didn't want to have to learn a new application just to gain functionality that had been included in previous versions of PS/IM.
    I've now got CS4 Premium Design Edition which of course includs Fireworks... and here's what Help has to say on the subject of imported .gifs.
    "Note: When you import an animated GIF, the state delay setting defaults to 0.07 seconds. If necessary, use the States panel to restore the original timing."
    This is no use to me. What if I don't know the individual frame timings? What if there are 200 frames with varying timings?
    Simple question: which current Adobe product is capable of importing a .gif while retaining the frame timings? If anyone knows, or if I've misunderstood the nature of the Fireworks Help quote above, I'd really appreciate some input here. Thanks :)
    Not so simple question: why was an excellent gif-editing application thrown out to have its functionality partially replaced by a bunch of scripts and half-effective workarounds cooked up by desperate users ("import a gif by using the video import and typing *.* into the filename box..")? It's a fair question I think.
    Mark

    Hi Bob, that's not glib at all, it's a reasonable question.
    I uninstalled it along with everything else when I installed CS3, in the reasonable expectation that whatever replaced IR would be at least equal in functionality.
    Perhaps I should just dig out CS2 and install IM from there, but I have some serious reservations about doing so, because I don't know if/how a partial install of CS2 will impact upon my installation of CS4, and I'm not confident of getting support.
    I am also curious to know if/why Adobe actually removed basic functionality without replicating or replacing it in their other software. I really want to know: which recent, currently supported Adobe product
    should I be using in order to regain this functionality? Or do Adobe no longer produce a geniuinely comprehensive .gif-editing application?
    Mark

  • Animated GIF ignoring frame timing

    I am trying to create simple animated GIFs with a few layers
    of text that simply fade in and fade out in sequence. My initial
    attempt worked perfectly. Most frames use the default 7/100's of a
    second delay as they fade. A few frames were manually set to much
    longer delays so that the text pauses, before fading out to be
    replaced by the next text.
    When I reopened the file, to adjust the background color, and
    then re-saved it, the GIF now plays straight through, ignoring the
    timing of each frame. Nothing I do now can get it to pause on the
    appropriate frames. I've tried cutting the symbols out and pasting
    them into a new file, removing the animation from the symbols and
    reapplying it, etc.
    Any ideas, anyone?
    Thanks in advance.

    None, None.

  • Creating a Gif is different frame rate

    If I have an uncompressed .AVI file that I created in After Effects CS5.5 which is 23.976 fps, and load it in Adobe Media Encoder CS5.5, and tell it to create a .GIF of it, at an output fps of 23.976, when I load the created .GIF into Adobe After Effects it tells me the frame rate is 25 fps and there is a black frame padded on the end.  I want the frame rate of the GIF to be what I ask it to be, ie. 23.976, with no additional black frames.
    Here's what happened with screenshots:
    1. I load the uncompressed AVI file that was created in Adobe After Effects CS5.5 into Adobe Media Encoder CS5.5.  Note below that Adobe Media Encoder is saying that the source clip is 23.976 fps, and that the export settings are to create an animated GIF at 23.976 fps.
    2. After Adobe Media Encoder CS5.5 has said "done" (Encoding Completed Succesfully) for this export to a .GIF, if I take that .GIF file that Adobe Media Encoder has just created into Adobe After Effects CS5.5, this is what it says:
    As can be seen above, Adobe After Effects CS5.5 is saying the GIF file that Adobe Media Encoder CS5.5 has just encoded is actually 25 fps, not 23.976 fps like I told it to be exported as.  Also, the GIF Adobe Media Encoder has created is 10 frames long, whereas my original uncompressed AVI is 9 frames long.
    Edit: I've just been reading up on the GIF format and it seems it doesn't store a frame rate but instead stores a frame delay, which is in hundredths of a second.  If this is just an integer, is this the reason for the displayed frame rate discrepancy, ie. 1 frame at 23.976 fps  would be 4.1708 hundredths of a second I think, and 1 frame at 25 fps would be 4 hundredths of a second I think - both rounded to the nearest integer would be 4 hundredths of a second so would the frame delay be set to "4" for both 23.976 fps and 25 fps? (there is also the fact that some short time will be taken for the drawing of the frame)
    Though even with the above, it shouldn't be increasing the amount of output frames.  It converts it correctly (no additional frames) if I use VirtualDub to convert the AVI to GIF instead of Adobe Media Encoder CS5.5.

    Thanks.  Could you get them to also check other parts of the code too.  eg. when I had a work area set in Adobe After Effects CS5.5 and then loaded that project into Adobe Media Encoder (dynamic link etc.) and rendered just the work area I think it was about a frame out then too - I don't think it was a GIF in that case but another type (maybe AVI/H264).

  • Animated Gif- want to loop some frames, then others

    I'm creating some web banners, and I need the file size to stay low, but would like to have a 3 or 4 frame cycle loop for a while, then go to a frame that holds for several seconds, then back to the loop, and then another frame that holds. So really all there is is 6 total frames, but in order to make it play out how I want,  I have to set like 30 frames in the animation window, each one of the 6 total, and then the file size is enormous compared to  what really should be possible, its basically treating it as though I have 30 distinct frames. Isn't there a way to make an extended animation using a only handful of frames, and have the file size not balloon up?
    Another thing I'm trying to do, to cut down in file size, is have the animated portion be real lossy, since its quick and detail is not important there, but have the frames that hold for a while be higher quality. But there doesn't seem to be a way to do that... why not?
    Thanks for any advice,
    Andrew

    But there doesn't seem to be a way to do that... why not?
    Well, you are using GIF, aren't you? That pretty much covers all the options. These are limitations in the file format, plain and simple. There is no such thing as a per-frame local palette, all 256 colors are distributed across all frames. So if the content requires a certain amount of colors, the algorithm merely tries to balance itself out. Likewise, the frame behavior is dictated by the file format specs, so there is realyl nothing you can do. As Zeno said, you'd have much better luck doing this in Flash using pre-processed PNGs and a few simple timeline commands with goto().
    Mylenium

  • Animated GIF frame loss

    I have an applet that has a JPanel with a JLabel in it. That JLabel was created with an ImageIcon constructor with an animated gif image. The gif has eleven frames (each with replace set) and is set to loop. When I bring up the applet the image animates through the first 7 frames then stops. I can File/Open the gif in Netscape and it looks fine - animates all images and loops. Looking at it with:
    setDebugGraphicsOptions(DebugGraphics.BUFFERED_OPTION); or FLASH_OPTION
    it looks good until that 7th frame then I start to see flash of grey the size of the JLabel.
    I understand that the ImageObserver defaults to the JLabel. But I have tried directly setting it with no joy. I have also tried calling .flush() on the image with no joy. So I tried a different animated gif and it stopped on the 3rd frame (but also appears fine in a browser).
    I am on day 2 of trying to figure this out (pulling my hair out).
    I cut this down quite a bit, so there may be syntax errors.
    public class RRR extends JApplet implements RRRConsts
    public void init()
    loadImages();
    myJPanel = new MyJPanel();
    contentPane.add(myJPael);
    private void loadImages()
    try
    problemImage = loadImage(new URL(getDocumentBase(),
    "problem.gif"));
    catch (Exception e)
    { logger.log(Level.SEVERE, "Unable to load images", e); }
    private Image loadImage(URL url) throws InterruptedException
    Image image = getImage(url);
    MediaTracker tracker = new MediaTracker(this);
    tracker.addImage(image, 0);
    tracker.waitForID(0);
    return image;
    MyJPanel myJPanel = null;
    static Image problemImage = null;
    class MyJPanel extends JPanel implements RRRConsts
    MyJPanel()
    setLayout(null);
    setBounds(0,0,468,540);
    setOpaque(false);
    buildUI();
    private void buildUI()
    myLabel = new MyLabel();
    add(myLabel);
    private MyLabel myLabel = null;
    class MyLabel extends JLabel implements RRRConsts, ActionListener
    MyLabel()
    super(new ImageIcon(RRR.problemImage));
    }

    I just had the same problem. It seems that when using an animated gif as ImageIcon it will not be loaded compeltly if it is too large. The maximum seems to be somewhere between 60 - 70 KB.
    I managed to use a higher compression on my gifs to make them smaller, but I haven't found any general solution yet.

  • Any way to get frame accurate in icon view mode?

    Does anyone know if there is a way set frame accurate in points in icon view mode?  I know that if you are "hover scrubbing" a clip, and then click on it you can use the JKL keys to shuttle through the footage.  But is there any way to go frame-by-frame through the footage as well?
    I ask because I have a 4-camera shoot where the clips were synced by a slate clap.  I'd like to make a multicam clip from the shots so am going through and setting the "clap" as the in point of each clip, and then using them as sync points for the multicam clip.  I hover scrub to the general area of the slate clap (works great) then use the JKL key to narrow in "clap" even more (also works great).  However, it is nearly impossible to stop exactly on the frame where the slate hits using the JKL keys.  So I would like to get in the general vicinity using JKL, and then use some other keys or method to get to the exact frame of the "clap".  One would assume that the arrow keys would do this, but they don't. 
    Does anyone know if there is a way to accomplish this?  Thanks in advance for any help.

    I understand your point, and it never ocurred to me that I part of my normal workflow when doing things like that to more than a few clips is to select all of the clips and put them all in the Source Monitor with a single command. (Select them all, right click, and select "Open in Source Monitor".) So I don't go back and forth between windows. I guess I have been doing it so long I missed that step in the explanation. Sorry about that. Also, please understand that I skipped CS4 and CS5 so when I started using CS6 I have never really been comfortable with the hover scrub for anything serious. Not yet anyway.
    I figure that all of the clips will end up in the Source Monitor anyway before they hit the timeline, so why not put them up there and as I finish with each one I close that window and start on the next one.
    Those of us who go back to when Premiere became Premiere Pro have been waiting for some of these features a very long time. Slap-your-head it might be to you or me, but Adobe only has so much money to pay engineers and there is always something more important to work on. Like becoming codec agnostic or handling huge frame sizes. Adobe has borrowed many features from FCP, but it is still a work in progress. We just submit feature requests and attempt to convince others to do the same. You can't imagine how much time we spent a decade ago getting people to create the proper sequence. Now you just drag a clip to the New Item button and your sequence is perfect. That is magic to someone like me, who taught people how to use Premiere Pro 1.5 by copying FCP tutorials and recreating them in Premiere Pro (for Lynda.com) using the same footage.
    Jim Simon is often quite vocal about things he would rather see done that some of the requests. I agree with him most of the time, but every now and then a little thing I think should be done is not on his list and he will let me know in no uncertain terms why he thinks what he thinks. He can be pretty persuasive and it is difficult to argue with his logic. The Adobe folks read these forums, yes, but they read the feature requests and look to see how many customers want certain things done. Not a bad way to prioritize. Now that more FCP people will be submitting requests, there is a good chance that you will see more features that you want.
    So, while it may be obvious to you, it isn't obvious to Adobe until the masses speak. I suggest that you might want to consider being a rabble rouser, getting like minded people to put in the same requests. That is probably the best way to get what you want.
    As for going in reverse.... I think that if you have never had some of these things, they are not important to you. They are not all like adding reverse. Some are but some of these are like the tailfin on the 1959 Caddilac. The higher the better back then. But are they necessary?

  • IMAQ AVI read frame performanc​e

    I've been playing around with the read AVI with buffer example in the Developer Community.  It reads all the frames of an AVI into memory and then plays them back at the appropriate frame rate.  This works ok with very small AVI files but with anything larger it gets slower and slower until it almost stops loading the AVI.  At that point it seems to be loading less than 5 frames per second and is killing my cpu.  I have plenty of free RAM during this.     
    https://decibel.ni.com/content/docs/DOC-8479
    This is the case with the play AVI example that comes with Labview too (without a buffer) which just loads and plays one frame at a time.  Can someone suggest a way to improve the performance of an AVI player in Labview?  My ultimate goal is to read an AVI and detect changes in motion of objects by comparing two frames at a time.  These AVIs are going to be at least 5 minutes in duration at a frame rate of 30 fps.
    I'm using Labview 2009 with the Vision Developer installed.
    Attachments:
    image_png.png ‏77 KB

    VTKim wrote:
    Hi,
    One thing we could implement is a compression filter that is on the IMAQ AVI Create VI used in conjunction with the IMAQ AVI Get Filter Names VI.  Also, what is the RAM available on your computer and what size images are you acquiring and saving to AVI?  Thanks!
    Kim
    Thanks for replying.  I'm running labview 2009 on a dual core pentium 2.3 GHz with 4 Gigs of ram.  It typically has 2 Gigs free while running the program.
    I'm not tryingt write an AVI, I'm trying to read an AVI.  The frames are 352 x 240 in size.  I've tried several read AVI examples and they all act the same way.  They slow down quickly and the hard drive and CPU are really cranking away.

  • How can i slide a sound track one frame at a time in Pre 10

    i do a lot of music videos where i record audio separtly from the video and then sync them and i have a lot of trouble getting them in sync, does anyone have any good tricks to do this? also, can i move said sound track one frame at a time in either direction to help get these tracks to sync up?
    Thanks

    If you zoom to the max, and watch that little TimeCode box (it pops up, when you begin dragging), just look at the last two digits, as those are the Frames. Even with my clumsy hands and fingers, I can nail the displacement to Frame-accurate standards.
    Now, some other NLE's go a step further, in that when the Clip is Selected, one can nudge it along, with modifier keys and the Left-Right Cursor keys. I do not think that has been added to PrE 10, but would be a great Feature Request.
    Good luck,
    Hunt
    [Edit] Well shut my mouth! After you Select the Clip (unlinking with Alt+click, if muxed), just hold down the Alt key, while hitting the Left-Rigt Cursor keys!!!! Forget that Feature Request.
    Message was edited by: Bill Hunt

  • Start or Stop expression at a given frame?

    hello to everyone on the support forum.
    I searched the forum but wasn't able to find anything quite good for resolving the matter.
    This is something that my IT group Charles Stinson, Nick Carangi, and Sandra Connor have been working on fixing for a while.
    I'm getting into expression but the issue is that I am not able to start or stop an expression at a given moment.
    I.E. If i want to wiggle(3, 10) until frame 100.
    How can I set this up?
    Thanks in advance.
    After Effects Cs5.5

    Rick and Dave are correct that it may be easiest to split the layer, but there are examples in After Effects Help for doing this with expressions, here:
    http://helpx.adobe.com/en/after-effects/using/expression-examples.html#expression_example_ start_or_stop_wiggle_at_specific_time

  • Data from a frame to another (bis)

    Hi,
    I have a first Frame DataPanelCli, when I use the button "Rechercher" in the class ButtonPanelCli, I find the informations of my company in the class FindRecCli. After when I use the button "STRUCTURE", I use the JFrame StructRecCli BUT I CAN NOT show the data coming from my first Frame.
    Here is the programme, could you please help me.
    regards.
    Thierry
    import java.util.*;
    import java.sql.*;
    import java.io.*;
    import java.awt.event.*;
    import java.awt.*;
    import java.awt.Container;
    import javax.swing.*;
    import javax.swing.table.*;
    import java.text.*;
    import java.lang.String;
    public class AppClient extends JFrame {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public AppClient() {
              //titre fen�tre
              super( " APPLICATION CLIENT");
              // set up GUI environment
              Container p = getContentPane();
              screenvarcli = new DataPanelCli();
              msgout = new JTextArea( 8, 40);
              p.setLayout( new FlowLayout() );
              p.add( new JScrollPane(screenvarcli) );
              p.add( new JScrollPane(msgout) );
              // DB Connection
              try {
                   String url = "jdbc:odbc:Access";
                   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                   // Cr�ation d'une liaison
                   dbconn = DriverManager.getConnection(url, "dba", "sql" );
                   msgout.append("Connection successful !\n");
              catch (ClassNotFoundException cnfex) {
                   cnfex.printStackTrace();
                   msgout.append("Connection unsuccessful\n" +
                        cnfex.toString());
              catch (SQLException sqlex) {
                   sqlex.printStackTrace();
                   msgout.append("Connection unsuccessful\n" +
                        sqlex.toString());
              catch (Exception excp) {
                   excp.printStackTrace();
                   msgout.append(excp.toString());
              // Complete GUI
              ButtonPanelCli controls = new
              ButtonPanelCli(dbconn, screenvarcli, msgout);
              p.add(controls);
    //          RadioButtons rb = new RadioButtons(dbconn, screenvarcli, msgout);
    //          p.add(rb);
              setSize(500,475);
              show();
         public static void main( String args[]) {
              AppClient cli = new AppClient();
              cli.addWindowListener(
                   new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                             System.exit(0);
    class DataPanelCli extends JPanel {
         JTextField ICCliFact, INSociete,
              ILAdresseA, ICPostal, ILLocalite, ICPays;
         JLabel LCCliFact, LNSociete,
              LLAdresseA, LCPostal, LLLocalite, LCPays;
         public DataPanelCli() {
              //Label Panel
              JPanel labelPanelCli = new JPanel();
              labelPanelCli.setLayout( new GridLayout(6, 1));
              LNSociete = new JLabel( "Nom ", 0);
              labelPanelCli.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              labelPanelCli.add(LCCliFact);
              LLAdresseA = new JLabel( "Adresse ", 0);
              labelPanelCli.add(LLAdresseA);
              LCPostal = new JLabel( "Code Postal ", 0);
              labelPanelCli.add(LCPostal);
              LLLocalite = new JLabel( "Localite ", 0);
              labelPanelCli.add(LLLocalite);
              LCPays = new JLabel( "Pays ", 0);
              labelPanelCli.add(LCPays);
              //TextField Panel
              JPanel screenvarcliPanel = new JPanel();
              screenvarcliPanel.setLayout( new GridLayout(6, 1));
              INSociete = new JTextField("Enter Name - click RECHERCHER", 20);
              screenvarcliPanel.add(INSociete);
              ICCliFact = new JTextField( 20);
              screenvarcliPanel.add(ICCliFact);
              ILAdresseA = new JTextField( 20);
              screenvarcliPanel.add(ILAdresseA);
              ICPostal = new JTextField( 20);
              screenvarcliPanel.add(ICPostal);
              ILLocalite = new JTextField( 20);
              screenvarcliPanel.add(ILLocalite);
              ICPays = new JTextField( 20);
              screenvarcliPanel.add(ICPays);
              // Accessibility Section - relate labels and text fields
              // for use by assistive technologies
              LNSociete.setLabelFor( INSociete);
              LLAdresseA.setLabelFor( ILAdresseA);
              LCPostal.setLabelFor( ICPostal);
              LLLocalite.setLabelFor( ILLocalite);
              LCPays.setLabelFor( ICPays);
              setLayout( new GridLayout( 1, 2));
              add( labelPanelCli);
              add( screenvarcliPanel);
    class ButtonPanelCli extends JPanel {
         public ButtonPanelCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              setLayout( new GridLayout( 2 ,0 ));
              JButton findcli = new JButton( "Rechercher" );
              findcli.addActionListener( new FindRecCli( dbc, scv, msg ));
              add( findcli );
              JButton addcli = new JButton( "Ajouter" );
              addcli.addActionListener( new AddRecCli( dbc, scv, msg ));
              add( addcli );
              JButton clearcli = new JButton( "Clear" );
              clearcli.addActionListener( new ClearScreenCli( scv ));
              add( clearcli );
              JButton printcli = new JButton( "Impression" );
    //          printcli.addActionListener( new PrintRecCli( dbc, scv, msg ));
              add( printcli );
              JButton structcli = new JButton( "STRUCTURE" );
              structcli.addActionListener( new StructRecCli( dbc, scv, msg ));
              add( structcli );
              JButton commerccli = new JButton( "COMMERCIAL" );
    //          commerccli.addActionListener( new CommercRecCli( dbc, scv, msg ));
              add( commerccli );
              JButton financli = new JButton( "FINANCIER" );
    //          financli.addActionListener( new FinanRecCli( dbc, scv, msg ));
              add( financli );
    class ClearScreenCli implements ActionListener {
         private DataPanelCli screenvarcli;
         public ClearScreenCli( DataPanelCli scv ) {
              screenvarcli = scv;
         public void actionPerformed( ActionEvent e ) {
              screenvarcli.ICCliFact.setText( "" );
              screenvarcli.INSociete.setText( "" );
              screenvarcli.ILAdresseA.setText( "" );
              screenvarcli.ICPostal.setText( "" );
              screenvarcli.ILLocalite.setText( "" );
              screenvarcli.ICPays.setText( "" );
    // Recherche Ajout Maj record
    // FIND NUMERO CLIENT
    class FindRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public FindRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e ) {
              try {
                   String rechnom = new String();
                   rechnom = screenvarcli.INSociete.getText();
              if ( !rechnom.equals( "" )) {
                   Statement statement = dbconn.createStatement();
                   String query = "SELECT * " +
                        "FROM Cli_fact, Adresse " +
                        "WHERE Cli_fact.n_societe_c = '" + rechnom + "' " +
                        "AND c_adresse = c_cli_fact " +
                        "AND c_type_adr = '02'";
    //                    "WHERE n_societe_c = '" +
    //                    rechnom + "' ";
                   msgout.append( "\nSending query " +
                   dbconn.nativeSQL( query ) + "\n" );
                   ResultSet rs = statement.executeQuery( query );
                   display( rs );
                   statement.close();
              else
                   screenvarcli.INSociete.setText( "Entrer le NOM de Soci�t� ");
              catch ( SQLException sqlex ) {
                   msgout.append( sqlex.toString() + sqlex.getMessage() );
         // Display results of query
         public void display( ResultSet rs ) {
              try {
                   rs.next();
                   int recordNumber = rs.getInt( 1);
                   if ( recordNumber != 0 ) {
                        screenvarcli.ICCliFact.setText( String.valueOf(recordNumber) );
                        screenvarcli.INSociete.setText( rs.getString(2));
                        screenvarcli.ILAdresseA.setText( rs.getString(35));
                        screenvarcli.ILLocalite.setText( rs.getString(32));
                        screenvarcli.ICPostal.setText( rs.getString(31));
                        screenvarcli.ICPays.setText( rs.getString(33));
                        msgout.append( "\n Enregistrements trouv�s!!!!!!!\n" );
                   else
                        msgout.append( "\nPas d'enregistrements trouv�s\n" );
              catch ( SQLException sqlex ) {
                   msgout.append( "\n*** Nom de Soci�t� pas dans la data Base ***\n" );
    // ADD CLIENT
    class AddRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         public AddRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e ) {
              try {
              Statement statement = dbconn.createStatement();
              String rechnom = new String();
              rechnom = screenvarcli.INSociete.getText();
              if ( !rechnom.equals( "" )) {
                   String query = "INSERT INTO cli_fact (" +
                   "n_societe_c) VALUES ('" +
                   screenvarcli.INSociete.getText() + "')";
                   msgout.append( "\nSending query " +
                   dbconn.nativeSQL( query ) + "\n" );
                   int result = statement.executeUpdate( query );
                   if ( result == 1 ) {
                   // read just inserted rec to obtain c_cli_fact field
                   // needed to place STRUCTURE COMMERCIAL FINANCIER
                   msgout.append( "\nInsertion r�ussie\n" );
                   try {
                   query = "SELECT * FROM cli_fact WHERE n_societe_c='" +
                        rechnom + "'";
                   ResultSet rs = statement.executeQuery( query );
                   rs.next();
                   screenvarcli.ICCliFact.setText(String.valueOf(rs.getInt(1)));
                   catch ( SQLException sqlex ) {
                   msgout.append( sqlex.toString() );
              else {
                   msgout.append( "\nInsertion NON r�ussie\n" );
                   screenvarcli.INSociete.setText( "" );
              else
              msgout.append( "\nEntrer au moins le non de soci�t� puis press NOUVEAU\n" );
              statement.close();
              catch ( SQLException sqlex ) {
              msgout.append( sqlex.toString() );
              screenvarcli.INSociete.setText("Nom de soci�t� existe d�j� -- reenter");
    // STRUCTURE
    //class StructRecCli extends JFrame implements ActionListener {
    class StructRecCli implements ActionListener {
         private DataPanelCli screenvarcli;
         private JTextArea msgout;
         private Connection dbconn;
         private boolean firsttime = true;
         public StructRecCli( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              super( " APPLICATION CLIENT STUCTURE " );
              dbconn = dbc;
              screenvarcli = scv;
              msgout = msg;
         public void actionPerformed( ActionEvent e) {
              if (firsttime) {
                   Container cnt = getContentPane();
                   cnt.setLayout( new FlowLayout() );
                   StruCliBox ob = new StruCliBox();
                   cnt.add( ob );
         screenvarcli.INSociete.getText();
                   ButtonPanelStr controls = new
                   ButtonPanelStr(dbconn, screenvarcli, msgout);
                   cnt.add(controls);
                   setSize(500, 475);
                   firsttime = false;
              show();
    class StruCliBox extends JPanel {
         JTextField ICCliFact, INSociete,
              ILAdresseA, ICPostal, ILLocalite, ICPays;
         JLabel LCCliFact, LNSociete,
              LLAdresseA, LCPostal, LLLocalite, LCPays;
         public StruCliBox() {
              //Label Panel
              JPanel s = new JPanel();
              s.setLayout( new GridLayout(6, 1));
              LNSociete = new JLabel( "Nom ", 0);
              s.add(LNSociete);
              LCCliFact = new JLabel( "Num�ro Client", 0);
              s.add(LCCliFact);
              LLAdresseA = new JLabel( "Adresse ", 0);
              s.add(LLAdresseA);
              LCPostal = new JLabel( "Code Postal ", 0);
              s.add(LCPostal);
              LLLocalite = new JLabel( "Localite ", 0);
              s.add(LLLocalite);
              LCPays = new JLabel( "Pays ", 0);
              s.add(LCPays);
              //TextField Panel
              JPanel screenvarcliPanel = new JPanel();
              screenvarcliPanel.setLayout( new GridLayout(6, 1));
              INSociete = new JTextField( 20);
              screenvarcliPanel.add(INSociete);
    //          String rechnom = new String();
    //          screenvarcli.INSociete.getText();
              ICCliFact = new JTextField( 20);
              screenvarcliPanel.add(ICCliFact);
              ILAdresseA = new JTextField( 20);
              screenvarcliPanel.add(ILAdresseA);
              ICPostal = new JTextField( 20);
              screenvarcliPanel.add(ICPostal);
              ILLocalite = new JTextField( 20);
              screenvarcliPanel.add(ILLocalite);
              ICPays = new JTextField( 20);
              screenvarcliPanel.add(ICPays);
              // Accessibility Section - relate labels and text fields
              // for use by assistive technologies
    //          LNSociete.setLabelFor( INSociete);
              LLAdresseA.setLabelFor( ILAdresseA);
              LCPostal.setLabelFor( ICPostal);
              LLLocalite.setLabelFor( ILLocalite);
              LCPays.setLabelFor( ICPays);
              setLayout( new GridLayout( 1, 2));
              add( s);
              add( screenvarcliPanel);
    //          setLayout(new FlowLayout() );
    //          add(s);     
    class ButtonPanelStr extends JPanel {
         public ButtonPanelStr( Connection dbc, DataPanelCli scv, JTextArea msg ) {
              setLayout( new GridLayout( 1 ,0 ));
              JButton addstr = new JButton("Ajouter");
    //          addstr.addActionListener( new AddStructure( dbconn, screenvarcli, msgout, ob));
              add( addstr );
              JButton majstr = new JButton("Mise � jour");
    //          majstr.addActionListener( new MajStructure( dbconn, screenvarcli, msgout, ob));
              add( majstr );
              JButton clestr = new JButton("Clear");
    //          clestr.addActionListener( new CleStructure( dbconn, screenvarcli, msgout, ob));
              add( clestr );
              JButton prnstr = new JButton("Impression");
    //          prnstr.addActionListener( new PrnStructure( dbconn, screenvarcli, msgout, ob));
              add( prnstr );
         // Fermeture de l'application
    //     protected void processWindowEvent(WindowEvent e) {
    //          if (e.getID() == WindowEvent.WINDOW_CLOSING) {
    //               System.exit(0);

    To get data from one frame to another, either create one frame with a reference to the other one so it can discover the data in it, or create a static variable in one of your classes that both frames can access

  • Error message: ni: A frame has been dropped and the acqusition has been canceled

    I use a NI PCIe 1433 framegrabber with a Basler spl4096-140km line camera.
    Using triggered acqusition with an external source, I can get a framerate of 68500Hz in NI-MAX.
    When I use the Matlab image acquisiton toolbox to acquire data, I however very often get the error message: 'ni: A frame has been dropped and the acqusition has been canceled". This happens even at much lower framerates (20kHz) and only seems to go away when acquiring data slowly.
    Computer is a Dell Precision 7600 and I assume there should be no issues with RAM or the PC being slow. The error does not go away when reducing the data size (i.e. reducing the ROI to one single point that is readout).
    Do you have any pointers why this error message appears and what can be done about it?
    Thank you!
    Reto

    Hello,
    I encountered the same problem and I think it is because the allowcation of storage in matlab cannot catch up with that of the camera so that it will drop frames when the buffer is full.
    I also want to know how to solve that.
    Yang

Maybe you are looking for