Updating JPanel with buttons from a different class

I have a JPanel in a class that has a gridlayout with buttons in it for a game board. And my problem is that when I want to update a button using setIcon() the button doesn't change in the GUI because the buttons are in a different class. The JPanel is in a Client class and the buttons are in a GamePlugin class. I've tried a bunch of different things but none of them worked or it was way too slow. I'm sure theres an easy way to do it that I'm not seeing. Any suggestions? Heres part of my code for updating the GUI.
private JPanel boardPanel = new JPanel(); 
Container cP = getContentPane();
cP.add(boardPanel, BorderLayout.WEST);
boardPanel.setPreferredSize(new Dimension(400, 400));
boardPanel.setLayout(new GridLayout(8, 8));
cP.add(optionsPanel, BorderLayout.CENTER);
      * Gets the board panel from the selected plugin.
     public void drawGameBoard(GamePlugin plugin) {
          board = (OthelloPlugin)plugin;
          boardPanel = board.getBoardPanel();
          for (int i = 0; i < GamePlugin.BOARD_SIZE; i++)
               for (int j = 0; j < GamePlugin.BOARD_SIZE; j++) {
                    board.boardButtons[i][j].setActionCommand("" + i + "" + j);
                    board.boardButtons[i][j].addActionListener(this);
      * This method takes a GameBoard and uses it to update this class' data
      * and GUI representation of the board.
     public void updateBoard(GamePlugin updatedBoard) {
          board = (OthelloPlugin)updatedBoard;
          for (int i = 0; i < GamePlugin.BOARD_SIZE; i++) {
               for (int j = 0; j < GamePlugin.BOARD_SIZE; j++) {
                    int cell = board.getCell(i,j);
                    if (cell == OthelloPlugin.PLAYER1){
                         board.boardButtons[i][j].setIcon(black);
                    else if (cell == OthelloPlugin.PLAYER2)
                         board.boardButtons[i][j].setIcon(white);
                    else
                         board.boardButtons[i][j].setText("");
     }

txp200:
I agree that a call to validate() , possibly repaint(), should fix your problem. In the class with the panel that the buttons are on, i would create a static repaint method that call panel.repaint(). You can then call that method in your other class. Just make sure u only use methods to change the properties of the button, never make a make a new one, as then you will lose the association with the panel. Hope this helps.
-- Brady E

Similar Messages

  • Updating Jlabel from a different class?

    Hi,
    Im in the middle of developing a program but swing is making it very hard for me to structure my code. The problem is I want to update the text of a Jlable from a different class when a button is pressed. THe event handling is done by a different class than the where the Jlabel is initiated which is why i think it doesnt work. But when the button is pressed it does execute a method from the main class that has the .setText() in it. Why wont the Jlabel update? Thank you

    Thanks for your help but i am still having trouble.
    This is the code from the button handler class
    public void actionPerformed(ActionEvent e)
           if ("btn3_sender".equals(e.getActionCommand()))
                JLabel j = temp2.getlblQuestion();
               j.setText("NEW TEXT");
           This is the code from the main class where the JLabel is created:
    public JLabel getlblQuestion()
        return lblQuestion;
    }How come this does not work??

  • Invoke a method in one class from a different class

    I am working on a much larger project, but to keep this simple, I wrote out a little test that would convey the over all theory of the program.
    What I am doing is starting out with a 2 JFrames and a Class. When the program is launched, the first JFrame opens. In this JFrame is a label and a button. When the button is clicked, the second JFrame opens. This JFrame has a textField and a button. The user puts the text in the textField and presses the button. When the button is pushed, I want the text that was just put in the textField, to be displayed in the first JFrame's label. I am trying to invoke a method in the first JFrame from the second, but nothing happens. I have also tried making the Class extend from JFrame1 and invoke it from there, but no luck. So, how do I invoke a method in a class from a different class?
    JFrame1 (I omitted the layout part. I made this in Netbeans so its pretty long)
    public class NewJFrame1 extends javax.swing.JFrame {
         private NewClass1 nC = new NewClass1();
         /** Creates new form NewJFrame1 */
         public NewJFrame1() {
              initComponents();
              jLabel1.setText("Chuck");
         public void setLabels()
              jLabel1.setText(nC.getName());
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                                  
         NewJFrame2 j2 = new NewJFrame2();
         j2.setVisible(true);The class
    public class NewClass1 {
         public static String name;
         public NewClass1()
         public NewClass1(String n)
              name = n;
         public String getName()
              return name;
         public void setName(String n)
              name = n;
    }The second jFrame
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                                  
         NewClass1 nC = new NewClass1();
         NewJFrame1 nF = new NewJFrame1();     
         nC.setName(jTextField1.getText());
         nF.setLabels();
         System.out.println(nC.getName());At this point I am begging for help. I have been trying for days to figure this out, and I just feel like I am not getting anywhere.
    Thanks

    So, how do I invoke a method in a class from a different class?Demo:
    public class Main {
        public static void main(String [] args) {
         Test1 t1 = new Test1();
         Test2 t2 = new Test2();
         int i = t1.method1();
         String s = t2.method2(i);
         System.out.println(s);
    class Test1 {
        public int method1() {
         return 10;
    class Test2 {
        public String method2(int i) {
         if (i == 10)
             return "ten";
         else
             return "nothing";
    }Output is "ten".
    Edited by: newark on May 28, 2008 10:55 AM

  • HT5181 iPhoto for iOS: Photos in iphoto's Camera Roll folder are not updated automatically with edits from other programs

    How can I solve the problem în the subject?

    How can I solve the problem în the subject?
    What exactly are you trying to do?
    Have you been editing photos in iPhoto and want to add them to your camera rool or photo stream?
    Then do exactly as the article describes, that you lonked to:
    iPhoto for iOS: Photos in Camera Roll are not updated automatically with edits from iPhoto
    Use iPhoto's Sharing to save a copy of the edited photo to the Caera Roll, or explain on mor e detail, what you want to do.
    Regards
    Léonie

  • Update Rows with info from other Rows in Same Table.

    I'm trying to update rows with information from the same table. The table gets loaded with info from a report that runs and it has to be a new entry every month but I would like to carry over some of the info from last month. This statement below runs but updates all rows in the new table load and in my test cases I only made a few match so only like 5 records should get updated. This is an example of what I'm trying to do. If I add this(C2.COL_INVC_ID = C1.COL_INVC_ID) to the last "*Where*" statement I get an invalid identifier for "C2.COL_INVC_ID". So what am I doing wrong here??? How can I update only the rows that where also in last months run???
    Thanks in advance for any help!
    Update OpenIssues OI1
    Set(OI1.Num, OI1.Status, OI1.Code, OI1.LastModifiedDate) =
    (Select OI2.Num, OI2.Status, OI2.Code, OI2.LastModifiedDate
    From OpenIssues OI2
    Where OI2.num = OI1.num and OI2.TableLoadDate = TO_DATE('01/31/2012 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
    Where and OI1.TableLoadDate = TO_DATE('02/29/2012 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
    SQLMe

    Hi,
    Welcome to the forum!
    SQLMe wrote:
    I'm trying to update rows with information from the same table. The table gets loaded with info from a report that runs and it has to be a new entry every month but I would like to carry over some of the info from last month. This statement below runs but updates all rows in the new table load and in my test cases I only made a few match so only like 5 records should get updated. This is an example of what I'm trying to do. If I add this(C2.COL_INVC_ID = C1.COL_INVC_ID) to the last "*Where*" statement I get an invalid identifier for "C2.COL_INVC_ID". If the aliases c1 and c2 aren't defined anywhere, then you can't use them anywhere.
    The WHERE clause of the UPDATE statement can only reference the table being updated, ot1 in this case.
    So what am I doing wrong here??? How can I update only the rows that where also in last months run???
    Thanks in advance for any help!
    Update OpenIssues OI1
    Set(OI1.Num, OI1.Status, OI1.Code, OI1.LastModifiedDate) =
    (Select OI2.Num, OI2.Status, OI2.Code, OI2.LastModifiedDate
    From OpenIssues OI2
    Where OI2.num = OI1.num and OI2.TableLoadDate = TO_DATE('01/31/2012 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
    Where and OI1.TableLoadDate = TO_DATE('02/29/2012 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
    ------------There's a syntax error in the last line. Either something got lost when you posted the code, or you just don't want the keyword AND. You certainly don't want AND immediately after WHERE.
    In general, if it's not obvious how to do an UPDATE, then UPDATE is the wrong tool: you want MERGE instead.
    Whenever you have a problem, please post a little sample data (CREATE TABLE and INSERT statements, relevant columns only) from all tables involved.
    Also post the results you want from that data, and an explanation of how you get those results from that data, with specific examples.
    Simplify the problem as much as possible. Remove all tables and columns that play no role in this problem.
    If you're asking about a DML statement, such as UPDATE, the CREATE TABLE and INSERT statements should re-create the tables as they are before the DML, and the results will be the contents of the changed table(s) when everything is finished.
    Always say which version of Oracle you're using.
    See the forum FAQ {message:id=9360002}

  • Updating Swing components from a different class

    I would like to use the JTextArea component in a JFrame to display fast updating text from my application. My application is very simple. When the app launches the GUI is created then my application engine would start processing and displaying text data into the GUI. After reading about Thread safety when using Swing components I concluded it would not be a good idea for my app engine class to update the JTextArea class directly using methods such as .append(String).
    I would be grateful for any suggestions on how I should approach updating Swing components from different classes.
    Many Thanks in advance Sean

    Hi
    Why don't you just implement a basic callback method?
    To do this the right way you should probably define a simple Interface that has a public method like updateProcessText(String s). Your swing class then implements this interface, basically forcing it to provide the public method you defined (this is no different than implementing ActionListener, which forces you to define actionPerformed). Secondly modify your processing class, so that it take's a class that implements the interface you just created, as one of the arguments in it's constructor. Lastly assign the argument from your construnctor to a private var - this will enable your processing class to have a handle to your swing class and update it as it pleases.
    This might sound very complex, but it's really simple once you've done it once.

  • How to use buttons from a different theme in current theme ?

    Hi Friendsl,
    I was just wondering how can I have those nice looking buttons from Theme-2(Builder Blue ) use in Theme-13(Classic Blue).
    I created a copy of theme-2 button template in theme-13 and called it "My Button".
    Now when I went into the button properties and changed the template to "My Button", it doesn't work like that.
    Am I missing some thing else here ?
    Please help.
    Thanks
    Raj

    Well it won't work that way because the css files referenced in your current theme are different than those in the one you want to use so Button X in theme 1 will look different from Button X in theme 2. When I've wanted to do that kind of thing, I've had my own theme and changed the CSS files or if I only want to override a few things, I create my own css file with a particular class that I want and then make the button use that class so as not to be overriden by the theme's classes.
    Cheers
    Kofi

  • Need assistance with buttons pulling in different MC's

    Hi I would like to have a screen with multiple buttons and
    when the button is clicked different MC's will be imprted into the
    .fla file. For instance button 1 will import 1_MC, button 2, 2_MC,
    button 3, 3_MC etc.
    Can someone point me to a tutorial or give me a down and
    dirty example using AS3?

    You don't need to make the buttons as movieclips, but you
    could if you had a reason for it. Like if you wanted to load the
    images into the buttons themselves... then you'd need them to be
    movieclips. You can use the same code for the event listeners for
    movieclips as you would for buttons...
    myButton1.addEventListener(MouseEvent.CLICK, addMovie1);
    But you don't add this code to the buttons (like you used to
    be able to sort of do in AS2)... it sits in the actions layer you
    create in the timeline where most of your code goes. As long as
    your button in in the same timeline and has the same instance name
    assigned to it as the code (ex. myButton1 above), the code will
    play for the button.
    You can position instances using AS by setting their x and y
    coordinates, even before they appear. You can pretty much set any
    property before you add it to the stage....
    function addMovie1(e:MouseEvent):void
    var myMovie1:Movie1 = new Movie1();
    myMovie2.x = ...
    myMovie2.y =...
    myMovie1.name = ...
    myMovie1.alpha = ...
    etc...
    mcContainer1.addChild(myMovie1);
    I think I've handled all of your questions with the snippets
    I just provided, so give it a go. Tutorials are handy, but you're
    doing the right thing if you find yourself struggling to figure
    stuff out without them... it's a better learning process... it
    tends to burn in better and last longer from having to solve
    it.

  • Loading a combobox with data from a different domain

    I have filled in a combobox with values from an .asp page and
    have used it
    successfully. The problem is that if the flash file is ran
    from a different
    domain from the load location, the combobox doesn't get
    filled in (as
    apposed to the error if I ran it off of my drive).
    datafeed.asp spits out the appropriate stuff for the AddItems
    function to
    read correctly. (as I has said, it does work). The combobox
    gets filled in
    the development environment (Macromedia Flash MX Professional
    2004) as well
    as flash player.
    But when I upload it to one of my other websites, the data is
    never
    retrieved. Even though that the webserver containing the data
    feed, the
    webserver hosting the flash file and my machine can all read
    datafeed.asp.
    Am I missing a setting that allows a flash file to read data
    from another
    domain?
    The following code has been changed for security reasons. But
    believe me it
    works in its original format.
    myData = new LoadVars();
    myData.onLoad = AddItems;
    myData.load("
    http://www.mydomain.com/datafeed.asp")
    function AddItems() {
    for (i=0; i<numItems; i++) {
    var ProductID = eval("myData.ProductID"+i);
    var ProductName = eval("myData.ProductName"+i);
    var ProductSale = eval("myData.ProductSale"+i);
    var DataProvider = { productid
    roductID, productsale
    roductSale };
    _root.application.chooseproducts.prodlist_cb.addItem(ProductName,
    DataProvider);
    Thank You,
    Julian

    not sure, but this might be what you need...
    //allow loading of files from domain
    System.security.allowDomain("
    http://www.mydomain.com");

  • Problem update JTextArea with message from thread

    I have a JTextArea to present the actually status of an running thread. The thread sends strings like: System.out.println("Reading in new message...");to the standardoutput.
    The problem is, that my application freezes when it should update the JTextArea. Any idea and what type of actionListener is recommend to use for the JTextArea?
    try
       BufferedReader breader = new BufferedReader(new InputStreamReader(System.in));
       statusmsg = breader.readLine();
       statusTextArea.append(statusmsg);
    catch (Exception e){};Cheers

    In general, you can't update the Swing stuff from "side" threads. Side threads talk with the Swing event thread by creating Runnable objects which contains the necessary data (in your case, for instance, the JTextArea or its parent panel/window, and the text to append), and then invoking SwingUtilities.invokeLater() to have this object run() method called by the Sing event thread. See:
    http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html

  • Update table with data from dialog

    Hello,
    I need the problem.
    I'm not update table with inputtext field where data change from dialog.
    This metod is update table.
    public void returnHandlerGoods(ReturnEvent returnEvent) {
    // Add event code here...
    ArrayList<PricatGoods> data = (ArrayList<PricatGoods>) returnEvent.getReturnValue();
    BindingContainer bc = getBindings();
    DCIteratorBinding dcIterBinding;
    // сохранить изменения detail
    dcIterBinding = (DCIteratorBinding) bindings.get("findVMIOrderDetailsIter");
    RowSetIterator s = dcIterBinding.getRowSetIterator();
    System.out.println("Получено товаров " + data.size());
    for (int i =0; i < data.size(); i++){
    Row detailRow = (RowImpl)s.createRow();
    detailRow.setNewRowState(Row.STATUS_INITIALIZED);
    s.insertRow(detailRow);
    s.setCurrentRow(detailRow);
    // detailRow.setAttribute("lineNum",createLineNum(i));
    detailRow.setAttribute("gtin",((PricatGoods)data.get(i)).getGtin());
    detailRow.setAttribute("goodId",((PricatGoods)data.get(i)).getGoodId());
    detailRow.setAttribute("goodName",((PricatGoods)data.get(i)).getGoodName());
    detailRow.setAttribute("sellerarticle",((PricatGoods)data.get(i)).getGoodCode());
    detailRow.setAttribute("buyerarticle",((PricatGoods)data.get(i)).getBuyerArticle());
    detailRow.setAttribute("unit",((PricatGoods)data.get(i)).getUnit());
    detailRow.setAttribute("totalQuantity",0);
    detailRow.setAttribute("acceptedQuantity",0);
    detailRow.setAttribute("taxRate",((PricatGoods)data.get(i)).getVatPercent());
    detailRow.setAttribute("price",((PricatGoods)data.get(i)).getCost());
    detailRow.setAttribute("priceWithoutTax",((PricatGoods)data.get(i)).getCostWithoutVat());
    detailRow.setAttribute("sumWithoutTax",0.0);
    detailRow.setAttribute("totalSum",0.0);
    detailRow.setAttribute("currency",((PricatGoods)data.get(i)).getCurrency());
    System.out.println("Добавление товара \" "+((PricatGoods)data.get(i)).getGoodName()+ "\" с goodCode " +((PricatGoods)data.get(i)).getGoodCode());
    s.closeRowSetIterator();
    AdfFacesContext.getCurrentInstance().addPartialTarget(table2);
    Fields are update good where inputText.readOnly = true.
    Fields are not update good where inputText.readOnly = false. Old data duplicate in new row.
    I have found some posts, but in them is not told accurately as I can solve the given problem.
    How to update a adf table??
    Re: ADF Dialog FrameWork-Table Update Problem
    Whether it is possible to solve the given problem?
    Thx,
    Dema

    If I use outputText that all job's a good. But I don't change these fields. I should have field with change for users.
    Code jspx page for table ===>
    <af:table value="#{bindings.findVMIOrderDetails1.collectionModel}"
    var="row"
    rows="#{bindings.findVMIOrderDetails1.rangeSize}"
    first="#{bindings.findVMIOrderDetails1.rangeStart}"
    emptyText="#{bindings.findVMIOrderDetails1.viewable ? 'Товаров пока нет.' : 'Access Denied.'}"
    selectionState="#{bindings.findVMIOrderDetails1.collectionModel.selectedRow}"
    selectionListener="#{bindings.findVMIOrderDetails1.collectionModel.makeCurrent}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.table2}"
    id="table2" styleClass="baseTable">
    <af:column sortProperty="lineNum" sortable="false"
    headerText="№"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column19}"
    id="column19">
    <af:inputText value="#{row.lineNum}" simple="false"
    required="true"
    columns="4"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText4}"
    id="inputText4" readOnly="false"
    requiredMessageDetail='Поле "№" обязательно для заполнения'/>
    </af:column>
    <af:column sortProperty="gtin" sortable="false"
    headerText="GTIN"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column20}"
    id="column20">
    <af:inputText value="#{row.gtin}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.gtin.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.gtin.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText26}"
    id="inputText26" readOnly="true"/>
    </af:column>
    <af:column sortProperty="sellerarticle" sortable="false"
    headerText="Код товара у поставщика"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column21}"
    id="column21">
    <af:inputText value="#{row.sellerarticle}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.sellerarticle.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.sellerarticle.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText27}"
    id="inputText27" readOnly="true"/>
    </af:column>
    <af:column sortProperty="buyerarticle" sortable="false"
    headerText="Код товара у покупателя"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column22}"
    id="column22">
    <af:inputText value="#{row.buyerarticle}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.buyerarticle.mandatory}"
    columns="10"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText28}"
    id="inputText28" readOnly="true"
    disabled="false"/>
    </af:column>
    <af:column sortProperty="goodName" sortable="false"
    headerText="Наименование"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column23}"
    id="column23">
    <af:inputText value="#{row.goodName}" simple="true"
    required="true"
    columns="11"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText29}"
    id="inputText29"
    requiredMessageDetail="Поле обязательно для заполнения"
    readOnly="true"/>
    </af:column>
    <af:column sortProperty="itemDesc" sortable="false"
    headerText="Описание"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column24}"
    id="column24" rendered="false">
    <af:inputText value="#{row.itemDesc}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.itemDesc.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.itemDesc.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText30}"
    id="inputText30"/>
    </af:column>
    <af:column sortProperty="unit" sortable="false"
    headerText="Ед. изм."
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column25}"
    id="column25">
    <af:inputText value="#{row.unit}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.unit.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.unit.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText31}"
    id="inputText31" readOnly="true"/>
    </af:column>
    <af:column sortProperty="currency" sortable="false"
    headerText="Валюта"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column26}"
    id="column26" rendered="false">
    <af:inputText value="#{row.currency}" simple="true"
    required="#{bindings.findVMIOrderDetails1.attrDefs.currency.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.currency.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText32}"
    id="inputText32"/>
    </af:column>
    <af:column sortProperty="totalQuantity" sortable="false"
    headerText="Общее кол-во"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column27}"
    id="column27">
    <af:inputText value="#{row.totalQuantity}"
    required="#{bindings.findVMIOrderDetails1.attrDefs.totalQuantity.mandatory}"
    columns="#{bindings.findVMIOrderDetails1.attrHints.totalQuantity.displayWidth}"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText36}"
    id="inputText36" readOnly="true">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.totalQuantity}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="acceptedQuantity" sortable="false"
    headerText="Кол-во поставки"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column28}"
    id="column28">
    <af:inputText value="#{row.acceptedQuantity}"
    required="true"
    columns="7"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText37}"
    id="inputText37"
    requiredMessageDetail='Поле "Подтвержденное количество "обязательно для заполнения'
    validator="#{backing_documents_outcoming_unprocessing_type_15_edit_01.validatorQuantity}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.acceptedQuantity}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="taxRate" sortable="false"
    headerText="НДС, %"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column29}"
    id="column29">
    <af:inputText value="#{row.taxRate}"
    required="true"
    columns="4"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText38}"
    id="inputText38"
    requiredMessageDetail='Поле "НДС" обязательно для заполнения'
    validator="#{backing_documents_outcoming_unprocessing_type_15_edit_01.unitValidatorNDS}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.taxRate}"/>
    </af:inputText>
    </af:column>
    <af:column sortable="false" headerText="Цена"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column34}"
    id="column34">
    <af:column sortProperty="priceWithoutTax" sortable="false"
    headerText="Без НДС"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column31}"
    id="column31">
    <af:inputText value="#{row.priceWithoutTax}"
    required="true"
    columns="6"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText40}"
    id="inputText40"
    requiredMessageDetail='Поле "Цена без НДС" обязательно для заполнения'
    validator="#{backing_documents_outcoming_unprocessing_type_15_edit_01.unitValidatorPriceWithoutTax}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.priceWithoutTax}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="price" sortable="false"
    headerText="С НДС"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column30}"
    id="column30">
    <af:inputText value="#{row.price}"
    required="true"
    columns="6"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText39}"
    id="inputText39"
    requiredMessageDetail='Поле "Цена с НДС" обязательно для заполнения'
    validator="#{backing_documents_outcoming_unprocessing_type_15_edit_01.unitValidatorPrice}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.price}"/>
    </af:inputText>
    </af:column>
    </af:column>
    <af:column sortable="false" headerText="Сумма"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column35}"
    id="column35">
    <af:column sortProperty="sumWithoutTax" sortable="false"
    headerText="Без НДС"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column32}"
    id="column32">
    <af:inputText value="#{row.sumWithoutTax}"
    required="true" columns="6"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText41}"
    id="inputText41"
    requiredMessageDetail='Поле "Сумма без НДС" обязательно для заполнения'
    autoSubmit="true"
    valueChangeListener="#{backing_documents_outcoming_unprocessing_type_15_edit_01.changeSum}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.sumWithoutTax}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="totalSum" sortable="false"
    headerText="С НДС"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.column33}"
    id="column33">
    <af:inputText value="#{row.totalSum}" required="true"
    columns="6"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.inputText42}"
    id="inputText42"
    requiredMessageDetail='Поле "Сумма с НДС" обязательно для заполнения'
    autoSubmit="true"
    valueChangeListener="#{backing_documents_outcoming_unprocessing_type_15_edit_01.changeSum}"
    validator="#{backing_documents_outcoming_unprocessing_type_15_edit_01.unitValidatorTotalSum}"
    readOnly="false">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.findVMIOrderDetails1.formats.totalSum}"/>
    </af:inputText>
    </af:column>
    </af:column>
    <f:facet name="selection">
    <af:tableSelectOne text="Select and"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.tableSelectOne2}"
    id="tableSelectOne2">
    <af:commandLink text="Удалить"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.commandLink5}"
    id="commandLink5"
    action="#{backing_documents_outcoming_unprocessing_type_15_edit_01.deleteRow}"
    styleClass="tableControlButton"
    immediate="false"/>
    </af:tableSelectOne>
    </f:facet>
    <f:facet name="actions">
    <h:panelGroup binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.panelGroup2}"
    id="panelGroup2">
    <af:commandLink text="Добавить"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.commandLink6}"
    id="commandLink6"
    styleClass="tableControlButton"
    immediate="false"
    action="#{backing_documents_outcoming_unprocessing_type_15_edit_01.addRows}"
    useWindow="true" windowHeight="500"
    windowWidth="600"
    returnListener="#{backing_documents_outcoming_unprocessing_type_15_edit_01.returnHandlerGoods}"
    rendered="#{bindings.JdDoctype02rspType.inputValue == 9&amp;&amp;bindings.JdDoctype02orderrspId.inputValue==null}"/>
    <af:commandLink text="Пересчитать" id="commandLink31"
    styleClass="tableControlButton"
    binding="#{backing_documents_outcoming_unprocessing_type_15_edit_01.commandLink31}"
    action="#{backing_documents_outcoming_unprocessing_type_15_edit_01.calc}"
    useWindow="true" immediate="false">
    <af:setActionListener from="#{row.rowKeyStr}"
    to="#{processScope.mainRowKeyStr}"/>
    </af:commandLink>
    </h:panelGroup>
    </f:facet>
    </af:table>

  • Update table with select from another table

    Hallo,
    I'd like to update table b with codes from a mapping table a.
    a has:
    town_id, town_code, town_name
    b has town_code, town_id, town_population, town_zip_code,...
    Table a has all the details - town_id, town_code and town_name and acts as the mapping between town_id and town_code
    In table b, town_code is null. I want to update the column b.town_code with town_code from table a where a.town_id = b.town_id.
    How will the update query look like?
    I tried
    UPDATE B SET town_code = (SELECT A.town_code FROM A,B WHERE A.town_id=B.town_id)
    and I get the error 'single-row subquery returns more than one row'
    Will appreciate your assistance

    This is what I did.
    First, I created and populated the TOWN_INFO table:
    CREATE TABLE "TOWN_INFO"
    (     "TOWN_ID" NUMBER,
         "TOWN_CODE" NUMBER,
         "E_MAIL" CHAR(15 BYTE)
    Table Created.
    insert all
    into TOWN_INFO (TOWN_ID, E_MAIL) values (3024,'[email protected]')
    into TOWN_INFO (TOWN_ID, E_MAIL) values (3040,'[email protected]')
    into TOWN_INFO (TOWN_ID, E_MAIL) values (3052,'[email protected]')
    into TOWN_INFO (TOWN_ID, E_MAIL) values (3065,'[email protected]')
    into TOWN_INFO (TOWN_ID, E_MAIL) values (3066,'[email protected]')
    select * from dual
    5 rows created.
    The following creates and populates the mapping table:
    CREATE TABLE "TOWN_MAPP"
    (     "TOWN_CODE" NUMBER,
         "TOWN_ID" VARCHAR2(255 BYTE),
         "TOWN_NAME" CHAR(6 BYTE)
    insert all
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3024,'1001','TOWN_1')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3040,'1003','TOWN_3')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3052,'1002','TOWN_2')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3065,'1004','TOWN_4')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3066,'1006','TOWN_6')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3088,'1007','TOWN_7')
    into TOWN_MAPP (TOWN_ID,TOWN_CODE, TOWN_NAME) values (3020,'1009','TOWN_9')
    select * from dual
    7 rows created.
    And now the update query:
    UPDATE TOWN_INFO
    SET TOWN_CODE=(SELECT B.TOWN_CODE FROM TOWN_MAPP B, TOWN_INFO C
    WHERE B.TOWN_ID=B.TOWN_ID)
    SET TOWN_CODE=(SELECT B.TOWN_CODE FROM TOWN_MAPP B, TOWN_INFO C
    ERROR at line 2:
    ORA-01427: single-row subquery returns more than one row
    Thanx in advance
    Edited by: user9954260 on Apr 13, 2010 7:40 AM
    Edited by: user9954260 on Apr 13, 2010 7:44 AM

  • Updating a GUI component from a runnable class that doesn't know that GUI

    Hi. I have a problem that I think isn't solvable in an elegant way, but I'd like to get confirmation before I do it the dirty way.
    My application allows the user to save (and load) his work in sessions files. I implemented this by a serializable class "Session" that basically stores all the information that the user created or the settings he made in its member variables.
    Now, I obviously want the session files created by this to be as small as possible and therefore I made sure that no GUI components are stored in this class.
    When the user has made all his settings, he can basically "run" his project, which may last for a long time (minutes, hours or days, depending on what the user wants to do....). Therefore I need to update the GUI with information on the progress/outcome of the running project. This is not just a matter of updating one single GUI component, but of a dynamic number of different internal frames and panels. So I'd need a reference to a GUI component that knows all these subcomponents to run a method that does the update work.
    How do I do that? I cannot pass the reference to that component through the method's argument that "runs" the project, because that needs to be a seperate thread, meaning that the method is just the run() method of that thread which has no arguments (which I cannot modify if I'm not mistaken).
    So the only thing I can think of is passing the reference through the constructor of the runnable class (which in turn must be stored in the session because it contains critical information on the user's work). As a result, all components that need to be incorporated in that updating process would be part of the session and go into the exported file, which is exactly what I wanted to avoid.
    I hope this description makes sense...
    Thanks in advance!

    Thanks for the quick answer! Though to be honest I am not sure how it relates to my question. Which is probably my fault rather than yours :-)
    But sometimes all it takes me to solve my problem is posting it to a forum and reading it through again :)
    Now I wrote a seperate class "Runner" that extends thread and has the gui components as members (passed through its constructor). I create and start() that object in the run method of the original runnable class (which isn't runnable anymore) so I can pass the gui component reference through that run method's argument.
    Not sure if this is elegant, but at least it allows me to avoid saving gui components to the session file :-)
    I am realizing that probably this post shouldn't have gone into the swing forum...

  • Trackpad with buttons from the new E/T/W 450/550 to E/T/W 440/540

    Hello,
    i was looking at the new 550 450 series and saw that Lenovo had returned to the old trackpoint buttons.
    Also i've notised for the short time i was able to take the quick look that the size of the new trackpad + buttons is the same as the trackpad in the 540 series.
    Also noticed that they didn't changed the keyboard, so the buttons are not connected to the keyboard as in the old ThinkPads, instead they're one module with the touchpad.
    So i was wondering if i buy it as a spare part would i be able to install it.
    Does anyone knows what are the exact sizes, what is the connection cable and etc.

    Yeah i found it on Ebay it says that it's compatible with E431 E440 E445 E531 E540 E455.
    And it's 65 $...
    Do you have any idea who is the manifacturer of those... again Synaptics ?
    So as for the driver problems, here is what is written on the page in Ebay:
    "If you use for E431 E440 E445 E531 E540 E455, pleaes uninstall the touchpad driver and restart, then update touchpad drive(UltraNav n10gx25w) , go to the control panel--the mouse--thinkpad(The function of the set you need) , or contact us."
    Do you know any other place from where we can buy an "accepting" drivers module ?
    Thank you!

  • Changing JPanel with button click.

    Hi, I have a class call TOC(Table of Content) which contains all the buttons. One class call MainController. All buttons I add an actionListener which the MainController class will handle. Anothe class which is the main one which contain a JPanel.
    When I click on the button in TOC class, it will go through the MainController class and display the respective JPanel associate with the button.
    Now the problem is how do I change the JPanel in the main class with a click on the button in TOC class?
    Please advise. Thanks in advance.

    Not sure what you mean exactly. However,
    Assuming that your view class is a JPanel, when you create your controller,
    ViewPanel view = new ViewPanel();
    MainController controller = new MainController(viewPanel);
    In MainController track a reference to your viewPanel. Also in viewPanel have a method called setCurrentPanel(JPanel panel). then int he controller's action listener
    public void actionPerformed(ActionEvent ev) {
    JPanel pnl = (JPanel) panelMap.get(ev.getSource().getName());
    viewPanel.setCurrentPanel(pnl);
    I am assuming you have a way of mapping each button to the panel it will use, which is what is in the panelMap. The viewPanel can have a CardPanel layout for the panels it displays and its setCurrentPanel, can bring to front/oradd the specified panel.
    Good luck, hope this helps :-)

Maybe you are looking for

  • Images as Hyperlinks in webi reports

    Hi, I'm trying to link two webi reports (summary through Details) through Open doc syntax using Images in a cell. We have a requirement to link two webi reports (summary through Detail) using buttons (like Back & email) as images which will be embedd

  • PI 7.10 Problem applying NetWeaver_ORA (Standard) License Key in ABAP

    We are attempting to license our PI 7.10 (Windows 2003 /64 on Oracle 10.2.0.4) installation, but are having problems. This is a dual stack installation (of course) and I have downloaded the requested license from service.sap.com. This is license type

  • Aspect Ratio in Premiere Pro

    I use Premiere Pro, upgraded from 6.5 It's been years since I have been active, but a friend just gave me 200 raw JPG's from her Nikon D50 to use in a project. When I import them into Pro, only 20% of the image displays. The "Interperet Footage" choi

  • Not able to find whats happening

    Hi All, Im new to JSP Please help me with this code, im not able to find out why after if condition its not going to the page as in requestDispatch. import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public clas

  • Obsolate statement for function module TABLE_COMPRESS

    Hi all, What is the alternate function module for TABLE_COMPRESS? This is going fine in 4.7 version. But in ECC 6.0, if we use this function module we r getting SLIN error (Obsolate statements) . How can we rectify this SLIN error? So we have to use