Variable height ListField resolved?

I need to implement a ListField whose height varies from one line to the other. Other threads suggested that the only way to do it is to put in place my own custom field. After a few experiences, I came up with something that seems to work. It's a little weird, but I hope someone can tell me if this solution is reliable (meaning it will work on BlackBerry platforms). [I posted a variation of this question here some time ago, but no one answered.]

The basic trick is to call setRowHeight in drawListRow (in the ListFieldCallback) for the next line. To complete the round, also call setRowHeight with the desired height to zero line when the field is first created or the preparation of the last row. Here is a code example for an application where each line shows an array of strings on separate lines, with a dash after the first line:

public void drawListRow(ListField lf, Graphics g, int row, int y, int width) {
    int lh = lf.getFont().getHeight();
    String [] lines = (String[])get(lf, row);
    g.drawText(info[0], 0, y, TOP | LEFT, width);
    y += lh;
    for (int i = 1; i < info.length; ++i) {
        g.drawText(info[i], INDENT, y, TOP | LEFT, width);
        y += lh;
    }
    info = (String[])get(lf, (row + 1) % lf.getSize());
    setRowHeight(info.length * lh);
}

I was afraid that this does not work unless the paint started to row 0, but in my tests it somehow seems to work even when scrolling.

So... is this work because ListField is supposed to work this way, or it's just an implementation accident, he works and it could break on some (perhaps future) versions of the software of the device?

Set up on BB9000 (bold).

It works, but it seriously slows device: setRowHeight() invalid within drawListRow() call control and force the refresh, making it endless.

In addition, setRowHeight (int rowm int height) (undocumented) seems to have no effect on 9000.

Tags: BlackBerry Developers

Similar Questions

  • ItemRender creates 2 of each object. Problems of variable height TextArea

    Ok. I'll start with what I was trying to explain how I found myself here. I tried TextArea with no scroll bar that resized at the height of the text. Googling, it seems to be the solution to do this is to expand the text box and use something like

    var numLines:int = this.mx_internal::getTextField().numLines;
    for (var i:int = 0; i < numLines; i++)
         totalHeight += this.mx_internal::getTextField().getLineMetrics(i).height;
    this.height = totalHeight;
    

    to calculate height. It works, but then I put the component (WrappedText) in a DataGrid control and used an itemRenderer on it and things went wrong.

    What I see is that there are TWO WrappedText objects with just a line in the DataGrid control is created. The only difference when I go back is their parent, for example if I this.toString () in the creationComplete

    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1
    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1
    

    The problem this causes is one of these objects a numlinesrequired equal the number of characters in the text. The other has the correct value (1). So what happens is the dataGrid Gets the wrong height.

    I've trimmed everything down so there is only one line in the table etc. Here is the trace output. FACT is creationComplete of the WrappedText and RESIZE is when it recalculates its size (when the text is printed) and HEIGHT of the GRID is displayed by the creationComplete of the DataGrid

    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1 HEIGHT= 196 NUM LINES 14
    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer61._Renderer_WrappedText1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer61._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer61._Renderer_WrappedText1 HEIGHT= 196 NUM LINES 14
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer61._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    GRID HEIGHT= 1402
    
    

    So my main question is this is a reasonable approach or y at - it another way not what I want? That is to say. a DataGrid that contains blocks of variable height, word wrapped text?

    Also, can someone explain what is happening here so I understand what I am doing wrong, for example why 2 objects will be created?

    Another interesting data point (?) is that if I put in an ObjectUtil.toString (this.parent) in the creationComplete of WrappedText the two objects get the value correct numlinesrequired example

    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1 HEIGHT= 196 NUM LINES 14
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    MADE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1
    GRID HEIGHT= 142
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer13._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    RESIZE:  Main4_0.theContainer.theGrid.ListBaseContentHolder8.Renderer27._Renderer_WrappedText1 HEIGHT= 14 NUM LINES 1
    
    

    Note that the NUM LINES changed and the RESIZING is done after the creationComplete of the grid.

    An explanation of the foregoing would be nice so why dumping simply the object causing completely different behaviors?

    I have attached the source of my simple text program. Thank you

    Stuart.

    The creation of two converters maybe because the DataGrid creates additional converters purely for the measure. I think that this only happens if variableRowHeight is set to true. If you take a look at the source of the DataGrid and search for 'calculateRowHeight()' you will see that it calls the method "getMeasuringRenderer()" on each column to calculate the height of each row.

    Your measurement problem can be because the width of the measurement converter is not set with the same value as the width of the rendering on the screen tool. I would put a breakpoint inside the method "setupRendererFromData" of DataGrid to see what the explicitWidth is defined. Looks like that the measurement converter should be set to the width of the column. Maybe set a width explicit on your column, if you do not already.

  • MX:box as ItemRenderer and data of variable height

    Hello

    I have a component mx:List that displays a value object instances and uses an element converter to display the data in the list. The rendering engine is derived from a mx:Box.

    The problem occurs when the data to display a variable height (data may have 0 to many pieces of additional data that are associated and are displayed using a mx:Repeater in the renderer). I can't get the mx:Box to have a dependent variable height of the size of the data that it contained. I tried "height ="100% "', that makes no difference and also 'verticalScrollPolicy ="off"', which truncates just the data in the list regardless of the height."

    Is it possible to display data of variable height via an ItemRenderer?

    Thanks for any help.

    Make sure you set variableRowHeight = true on the list.

    The rendering engine is given an explicitWidth and requested to report a height based on this width.  Often, which may require to make a custom Measure [] override, but you can sometimes get away with binding to explicitWidth.

    Alex Harui

    Flex SDK Developer

    Adobe Systems Inc..

    Blog: http://blogs.adobe.com/aharui

  • How do elements in a word in the list to wrap as necessary and be of variable height

    I am trying to build an itemrenderer for the list control.  The elements of the list of variable lengths of text, some of the text elements will be different colors determined during execution based on certain criteria (it works fine now with my custom itemrenderer).  What I need is for the items back to the line, and so for the list view items in different heights.  Is this possible to do?  All my attempts appear to have failed.  If I can't do that with a converter part of the suggestions on how to do?  Thank you very much in advance to one of you gurus who are able to help me.

    I would not expect this example works.  Width of the text is not always related to the canvas explicitWidth.  You'd probably have to substitute Measure [] like this:

    override protected function measure (): void

    {

    txt.explicitWidth = explicitWidth;

    Super.Measure ();

    }

    ]]>

    Alex Harui

    Flex SDK Developer

    Adobe Systems Inc..

    Blog: http://blogs.adobe.com/aharui

  • Subreports with variable height


    How do you get the subreports to print one after the other, when the height of each subreport varies? Each subreport is displayed on the page in an absolute position.

    Found the answer in the help file in the properties of the reference section:

    Type of position: = Float - the element is moved to the bottom because of the elements above it expands. It tries to preserve the distance between her and elements above him.

  • Lines dynamic height Blackberry

    Hello. I work with RichTextField inside TableRowManager Blackberry. I've just stuck with something. I want to get variable height for each line, but I just got height for each line.

    I've tried "setRowHeight (int arg0, int arg1)", but it gives an error because it is just valid for 'setRowHeight (int arg0).

    Is there an alternative to use a method like setRowHeight undocumented?

    Please give me help. Thank you

    Here is my code:

    public class ImageListField extends ListField implements ListFieldCallback {
        Vector rows;
        Vector satu;
        Vector dua;
        Vector tiga;
        Font font1;
        int totalHeight = 0;
        int fontHeight;
        TableRowManager row;
    
        public ImageListField(int indeks, Vector ayat) {
            rows = new Vector();
            satu = new Vector();
            dua = new Vector();
            tiga = new Vector();
    
            for(int i=0; i			 

    Two recommendations:

    (1) stop to develop using this level of JDE.  Any device released with that OS level can and should have been upgraded to OS 5.0.  You will find much better to work with OS 5.0.

    (2) stop using the JDE, develop using Eclipse.  You can import projects JDE.

    Back to your question, from memory, that some people have reported success limited using lines of variable height by using the method that you found undocumented, but there have been more than people who noted that it makes the ListField react badly especially scrolling.  So if you really need lines of variable height, then I recommend you plan to create a line with a HorizontalFieldManager.

    ListField is a great control to manage hundreds of rows of data, but that, to compromise, in this case with the line height.  If you have only a few rows to display, then you should get an adequate return with managers.

  • Touch anywhere on the screen calls the ListField TouchEvent.DOWN

    Hello

    I suffer with small complex issue. In the screen of my application, I have the title bar with a labelfield and two custom buttons.

    Below the titlefield I add a list field.

    Now, I have a few complex features on the field from the list. When I click each line in the list, it should move to another screen I do using navigation, click medium. Now if I touch the rank in the list (for touch devices), it should move to another screen. And if I touch along the line of the list, it will display popup menu (custom, not by default) with option of removal and details.

            mListItem = new ListField(length, ButtonField.CONSUME_CLICK)
            {
                long touchedAt = -1;
                long HOLD_TIME = 500;
    
             // The regular getFieldAtLocation returns wrong values in open
                        // spaces in
                        // complex managers, so we override it
    //                  public int getFieldAtLocation(int x, int y) {
    //                      XYRect rect = new XYRect();
    //                      int index = getFieldCount() - 1;
    //                      while (index >= 0) {
    //                          getField(index).getExtent(rect);
    //                          if (rect.contains(x, y))
    //                              break;
    //                          --index;
    //                      }
    //                      return index;
    //                  }
                protected boolean navigationClick(int status, int time)
                {
                    // Click related functionality
                    return true;
                }
    
                protected boolean touchEvent(TouchEvent message)
                {
                    if(message.getEvent() == TouchEvent.DOWN)
                    {
                         if (getFieldAtLocation(message.getX(1), message.getY(1)) == -1)
                         {
                             Logger.out("AccountList", "Touch down: getField location");
                             return true; // kill the event
                         }
                         else
                         {
                             touchedAt = System.currentTimeMillis();
                             touchedonList = true;
                             Logger.out("AccountList", "Touch down: touched down  "+touchedonList);
                         }
                    }
                    else if(message.getEvent() == TouchEvent.UP )
                    {
    
                           if(System.currentTimeMillis() - touchedAt < HOLD_TIME && touchedonList == true)
                           {
                               touchedAt = -1; // reset
                               // Single Touch and Move to another screen
                           }
    
                           else if(touchedonList == true)
                           {
                             // Showing Menu Popup
                           }
                    }
                    return true;
    //              return super.touchEvent(message);  // Not using this as it will show the default pop up
                }
    

    And here's my reminder list field:

    public class ListCallBack implements ListFieldCallback
        {
            public void drawListRow(ListField listField, Graphics graphics, int index,
                    int y, int width) {
    
                String strdomOrg = yyyyyyy;
                String text = xxxxxx;
                Font f = FONT_FAMILY_0_SF_AS_08;
    
                int h = f.getHeight();
    //          int height = (listField.getRowHeight() - h)/2 ;
                int height = h/2 ;
                y += height;
                graphics.setFont(f);
                graphics.setColor(Color.BLACK);
                graphics.drawText(strdomOrg, 10, y, DrawStyle.ELLIPSIS, width);
                y = y + h;
                graphics.setFont(FONT_FAMILY_1_SF_AS_08);
                graphics.setColor(Color.BLACK);
                graphics.drawText(text, 10, y, DrawStyle.ELLIPSIS , width);
    
             // use the offset instead
                int offset = (listField.getRowHeight() ) >> 1;
                if (index != 0) {
                    graphics.drawLine(0, y - offset , width, y - offset);
                }
            }
    
            public Object get(ListField listField, int index) {
                // TODO Auto-generated method stub
                return mAccounts[index];
            }
    
            public int getPreferredWidth(ListField listField) {
                // TODO Auto-generated method stub
                return screenWidth;
            }
    
            public int getPreferredHeight() {
                return getContentHeight();
            }
    
            public int indexOfList(ListField listField, String prefix, int start) {
                // TODO Auto-generated method stub
                return listField.getSelectedIndex();
            }
    
        }
    

    Now the question is to come a different way:

    1. whenever I touch the buttons in title field, he calls the listfield TouchEvent.DOWN. Then the click of a button does not work. Instead, by clicking on the title bar, it moves to another screen, which is the feature click list filed.

    2. so I added the listfield at a value for money. :

    m_vfmScreen = new VerticalFieldManager(VERTICAL_SCROLL | Manager.VERTICAL_SCROLLBAR)
            {
    
            protected boolean touchEvent(TouchEvent message) {
                    int event = message.getEvent();
                    if (event == TouchEvent.CLICK) {
                        if (getFieldAtLocation(message.getX(1), message.getY(1)) == -1)
                            return true; // kill the event
                        else {
                        }
                    }
                    return super.touchEvent(message);
                }
    
                // The regular getFieldAtLocation returns wrong values in open
                // spaces in
                // complex managers, so we override it
                public int getFieldAtLocation(int x, int y) {
                    XYRect rect = new XYRect();
                    int index = getFieldCount() - 1;
                    while (index >= 0) {
                        getField(index).getExtent(rect);
                        if (rect.contains(x, y))
                            break;
                        --index;
                    }
                    return index;
                }
            };
    

    While in the list key of field works. If I touch the buttons in the title bar, it does not. But if the keys become focus, this case they work.

    So I am in dilemma, what exactly the problem. Can someone please help.

    For me, there's a code unepxected in your touchEvent() - getFieldAtLocation().  If you want released supporess presses of field, I suggest you use code like this:

    protected boolean touchEvent (TouchEvent message) {}

    int x = message.getX (1);
    int y = message.getY (1);
    If (x < 0="" ||="" y=""> < 0="" ||="" x=""> getExtent () .width: y > getExtent () .height) {}
    Outside the scope
    Returns false;
    }

  • Size of the dynamic online ListField

    My requirement is to have the dynamic height listfield, I implementd a listfied custom by extending a VerticalFieldManager for each line and adding to another verticalfieldmanager for scrolling effect, but I'm stuck when it came to adding images in each row.

    I enclose the code to add textalone, of customrow

    public class CustomRow extends VerticalFieldManager implements FieldChangeListener, FocusChangeListener
    {
    public CustomRow(String a, String b)
        {
            field = new RichTextField(a,RichTextField.NON_FOCUSABLE);
            field.setPadding(10, 10, 0, 10);
            field2 = new RichTextField(b,RichTextField.NON_FOCUSABLE);
            field2.setPadding(0, 10, 10, 10);
            _focus.setFocusListener(this);
            this.add(_focus);
            h = this.getPreferredHeightOfChild(field)+this.getPreferredHeightOfChild(field2)+10;
            _vfm = new VerticalFieldManager(){
                protected void paint(Graphics graphics)
                {
                    h = this.getHeight();
                    graphics.drawLine(10, h-1, Display.getWidth()-10, h-1);
                    super.paint(graphics);
                }
            };
            _vfm.add(field);
            _vfm.add(field2);
            this.add(_vfm);
        }
    }
    

    A Y

    One way is to make your line a HorizontalFieldManager, add your 'image' as a BitmapField, and then add a value for money, where you add your RichTextFields.

    If you want to add lines by using this structure, loads, this will make slow processing, especially whenever you add a line.  You can do better your online custom a field.  But if you add only a few of them, it should run OK.

  • How to adjust the height of a separator?

    Hello

    I have a scenario as to display three tabs horizontally, developed that display different fields.

    Kindly help me

    1 adjust the height of the vertical line separator.

    2 Add listeners to tune-up for the tabs horizontally.

    3. to select a tab on the selection by changing the background color.

    4. setting the focus to a text field, say search after selecting a tab.

    Thanks in advance.

    ~ SK

    OK, I understand, but I suggest if you are totally new, you learn what you both and your knowledge.  You also start slowly.  So for this thread, let's focus on the variable height SeparatorField.

    Start another Thread for each individual question, ensuring that you explain in detail what you are were trying to do and what is happening.  If you say something like "when I change the update of a text field its new adding another set of fields' this is clearly a bug in your code because standard code doesn't do this, then we will need to see your code.  But do give us all your code.  Try to reproduce the problem with a very small piece of code (10 or 20 lines maximum).  You will often find that when you start from scratch, try to re-create the problem, you find your bug.

    But in this Thread.  Since a variable height that separatorfieldof does not exist in the API, you must do it yourself.

    Here is a post that I think will provide you with the details you need for this:

    http://supportforums.BlackBerry.com/T5/Java-development/nested-HorizontalFieldManagers/m-p/400857#M7...

  • Height of anchor inside a split pane

    I have the following code in the fxml:
    < Voletfractionne = "0.1" dividerPositions fx:id = "scpContenido".
    AnchorPane.bottomAnchor = "0.0"
    AnchorPane.leftAnchor = "0.0"
    AnchorPane.rightAnchor = "0.0"
    AnchorPane.topAnchor = "0.0" >
    elements <>
    < VBox >
    < children >
    < ComboBox fx:id = "tipoDocumento" onAction = "#cmbTipoDocumentoAction" prefHeight = '21.0' prefWidth = '138.0"VBox.vgrow ="NEVER">
    elements <>
    < FXCollections fx:factory = "observableArrayList" >
    < string fx: value = "Tesis" / >
    < string fx: value = "Ejecutorias" / >
    < string fx: value = "Ex voto" / >
    < string fx: value = "Acuerdos" / >
    < string fx: value = "Other" / >
    < string fx: value = "Tribunales otros Sentencias" / >
    < string fx: value = "" Octava parte: Ejecutorias "/ >"
    < string fx: value = "" Octava parte: Votos "/ >"
    < string fx: value = "" Novena parte: Sentencias "/ >"
    < / FXCollections >
    < / object >
    < VBox.margin >
    < encrusted fx:id = "x 1" / >
    < VBox.margin >
    < / ComboBox >
    "< button fx:id ="btnSecuencial"mnemonicParsing ="false"onAction ="#btnSecuencialAction"prefHeight = '21.0' prefWidth ="138.0"text = '% btnSecuencial' VBox.margin ="$x1"VBox.vgrow =" NEVER "/ >
    "< button fx:id ="btnPorRegistro"mnemonicParsing ="false"prefHeight = '21.0' prefWidth ="138.0"text = '% btnPorRegistro' VBox.margin ="$x1"VBox.vgrow =" NEVER "/ >
    "< button fx:id ="btnRecuperar"mnemonicParsing ="false"prefWidth ="138.0"text = '% btnRecuperar' VBox.margin ="$x1"VBox.vgrow =" NEVER "/ >
    "< fx:id VBox ="panelBusqueda"prefHeight = '295,0' prefWidth = '138.0" VBox.margin = "$x1" VBox.vgrow ="ALWAYS" / >
    < / children >
    < / VBox >
    < ScrollPane
    AnchorPane.topAnchor = "0.0"
    AnchorPane.bottomAnchor = "0.0" >
    < content >
    < AnchorPane fx:id = "panelesResultados".
    minWidth = "800".
    minHeight = "${scpContenido.height}" "
    prefWidth = "800" >

    < / AnchorPane >
    < / content >
    < / ScrollPane >
    < / object >
    < / Voletfractionne >
    but when I add a new child in the "panelesResultados" anchor pane does not all the way up on the left side of the pane plit... when I put an Anchorpane with a TableView within the table view does not show the lines...
    The question is how the pane anchor to get all available on the Voletfractionne (or the ScrollPane) hight? in order to show the lines of the table view.
    I don't want a height value of fix since I want to be a window of variable height, so the number of lines depends on the height of the window...
    I hope that I have explained myself clear.
    Greetings and thanks in advance

    Try this

    
       
          
    
          
       
    
    

    "And why you use AnchorPane.topAnchor ="0.0"and AnchorPane.bottomAnchor =" 0.0 "to the ScrollPane, if ScrollPane component is not Voletfractionne?

  • Using the KM configuration variable

    Hello

    I use LKM that uses the utility oracle sqlldr to load the data. I don't want to use the path hard-coded in the configuration of LKM.
    for example defalut directory = / root/home /.

    I defined a V_SQLDR_DIR variable to store the path. The value of the variable is not resolved during execution.

    Default directory = #V_SQLDR_DIR

    You must use a package, the first step of your package will be to define and initialize the variable, and then add your interface in the package.

  • Line does not come after each row of the list

    Hello

    I show a list in my current application. In the list, I paint a line after each line. Just a line of string, I add in each line. Now when I'm checking the list, on some devices, lines are coming. As in Bold 9790, after each line, a line is added. But in the Torch 9810 and curved 9320, line is not there. I don't get why this different behavior for different devices.

    Can someone please help.

    Here is my code:

    public class ListCallBack implements ListFieldCallback{
    
            public void drawListRow(ListField listField, Graphics graphics, int index,
                    int y, int width) {
    
                String text = "xxxxxxx";
                graphics.setFont(FONT_FAMILY_1_SF_AS_08);
                graphics.drawText(text, 10, y, DrawStyle.ELLIPSIS, width);
    
                if (index != 0) {
                    graphics.setColor(Color.BLACK);
                    graphics.drawLine(0, y-12, width, y-12);
                }
            }
    
            public Object get(ListField listField, int index) {
                // TODO Auto-generated method stub
                return mAccounts[index];
            }
    
            public int getPreferredWidth(ListField listField) {
                // TODO Auto-generated method stub
                return screenWidth;
            }
    
            public int getPreferredHeight() {
                return getContentHeight();
            }
    
            public int indexOfList(ListField listField, String prefix, int start) {
                // TODO Auto-generated method stub
                return listField.getSelectedIndex();
            }
    
            }
    }
    

    Thank you...

    The best result I wanted to say, variable height from station to station. So currently I use the line height and made changes accordingly.

    Here is my Code:

     Font f = FONT_FAMILY_1_SF_AS_08;
                graphics.setFont(f);
                int h = f.getHeight();
                int height = (listField.getRowHeight() - h)/2 ;
                y += height;
                graphics.drawText(text, 10, y, DrawStyle.ELLIPSIS, width);
                if (index != 0) {
                    graphics.setColor(Color.BLACK);
                    graphics.drawLine(0, y - height + 1 , width, y - height + 1);
                }
    

    It worked properly. Thanks a lot Peter and Simon.

  • detection with high speed HAVE changes at high speed

    I'm working on a helmet testrig. We use the card M PCI-6251. An accelerometer 3 axes is set inside the helmet and its fall of variable height up to 3 m. During his fall, I need to gain entrance to the analog accelerometer (sampling > = 100 kHz) and also to find the speed with which he hits the bottom.

    How I find the speed is two sensors spaced apart at the bottom of 4cm. When the helmet Assembly passes through the sensors, they become high momentarily and my DI me should get the corresponding time.

    It's my problem and also very important part of the program. The data are acquired, for approx. 2 seconds. One entered analog from 3-channel sample rate > = 100 kHz, the second is a digital entry of these digital sensors (two proximity sensors) within 10msec helmet Assembly passes one sensor to another. I can't detect the moment when the sensors go high.

    My first test was (fig Acq1) just a spot of digital input to the application. (flags should make sure I have time only once for each sensor). It always gives me the time 16msec difference, 32msec, or 0 for any speed.

    My second try was the method of change detection (follow-up of the programs posted on the forum). This also seems to sense only, 0msec, 15msec or 31msec only. This is not true since heights higher than the helmet fell, it is faster, and for these the time difference between two sensors that it gives is zero.

    The way I implemented change detection is, I just get of an hour for the first detection of change and second change detection only, where the structure case inside the structure of the event.

    is there else a better way to do it?

    Thank you very much.

    Patricia

    I see no reason why you would need external clock.  The PCI-6251 card has an internal clock.

    I look through the viewfinder of the example for DAQmx examples using analog and digital inputs.  I think that might work for you is Multi-multifunction-read AI Synch Dig Chan.vi

  • How to trace calls OIC

    Hello

    Is there a way to trace the OIC calls to determine how the parameters are aligned in the similar call as trace ODBC tool. I get a core dump with the following stack trace. Don't know how to start with

    Call stack:

    Address image

    60F4835A 001290EC LdiDateFromArray. + 28

    61AD0B5F vsnpri 00129130 + 1BE81

    61AD4C42 001291 C 4 vsnpri + 1FF64

    61AB0971 001292CC ttcfour + 37 b

    61AADA75 00129B 94 ttcdrv + 146F

    05A956B0 00129BAC nioqwa + 30

    62DD17B5 0012BED8 upigmxln + 7FD3

    62DC07BC 0012BF0C upirtrc + 44

    62 kpurcsc 0012BF44 D + 5A 47404

    62 kpuexec 0012E2C0 04873 D + 180 d

    62C2A9C2 0012E2EC OCIStmtExecute + 24

    04CD89FF 0012ED4C OCIStmtExecute + 3F

    Thank you

    Sachin

    Hello

    It looks that export command did not work in Cygwin, so approx. variables were not resolved. He worked in the mks. I can now see the * trc file in the ORA_CLIENTTRACE_DIR directory.

    I see that OIC calls are saved in the ora_skgu_24064.trc1 file. that means the name of the log file

    Thanks for your reply.

  • liaison work not when you use EL for Hashtable keys

    Hi all

    Here's the scenario: I have an iteration of the external, in this iterator, a table and a PanelGroupLayout are generated; the PanelGroupLayout displayed or not displayed depends on a property in backing bean which is a hash table and touch which is based on the attribute of the external iterator, so access to the current item in the hash through table

    the key, he has incorporated EL; and inside the table, there are 2 radio buttons and each is bound to an instance of CoreSelectBooleanRadio using a hash table and key in this table is based on the same attribute of the external iterator (so same EL), the segment code looks like this:

    < tr:iterator var = "item" varStatus = "status" value = "#{bk_myBackingBean.subQuestions}" lines = '0' > ' "

    < tr:panelBox > <!-block test to check how to access the hastable value is OK->

    < tr:outputText value = "#{item.questionNumber}" / >

    < tr:outputText value = "#{bk_myBackingBean.dependent.medicalData.displayQ2Answers [item.questionNumber]}" / > <! - it's a good way to get the hastable value - >

    < / tr:panelBox >

    < trh:tableLayout >

    < trh:rowLayout >

    < trh:cellFormat columnSpan = "2" inlineStyle = "padding: 10px 0 10px 50px;  styleClass = "alignleft" >

    < label > < tr:outputText value = "#{item.questionLetter} #{item.description}" / > < / label >

    < / trh:cellFormat >

    < trh:cellFormat columnSpan = "2" inlineStyle = "padding: 0 0 10px 50px" styleClass = "alignleft" >

    < tr:panelGroupLayout layout = "horizontal" >

    < tr:selectBooleanRadio id = "Q2No" group = "question2 #{status.index}" text = "" autoSubmit = "true" inlineStyle = "border-width: 0px; »

    valueChangeListener = "#{bk_myBackingBean.QuestionChangeListener} '"

    binding = "#{bk_myBackingBean.dependent.medicalData.q2NoRdos [item.questionNumber]}" "

    >

    < f: attribute = name value = "#{item.questionNumber"questionNumber"}" / > "

    < / tr:selectBooleanRadio >

    < tr:spacer width = "5px" / >

    < tr:selectBooleanRadio id = "Q2Yes" group = "question2 #{status.index}" text = 'Yes' autoSubmit = "true" inlineStyle = "border-width: 0px; »

    onclick = "removedRequiredError (this.ID)" "

    valueChangeListener = "#{bk_myBackingBean.QuestionChangeListener} '"

    binding = "#{bk_myBackingBean.dependent.medicalData.q2YesRdos [item.questionNumber]}" "

    >

    < f: attribute = name value = "#{item.questionNumber"questionNumber"}" / > "

    < / tr:selectBooleanRadio >

    < / tr:panelGroupLayout >

    < tr:panelGroupLayout layout = "horizontal" >

    < tr:outputLabel id = "Q2Error" value = "#{bk_myBackingBean.dependent.medicalData.questionErrors [item.questionNumber]}" "

    styleClass = "error" / >

    < / tr:panelGroupLayout >

    < / trh:cellFormat >

    < / trh:rowLayout >

    < / trh:tableLayout >

    "" < tr:panelGroupLayout layout = "default" inlineStyle = "#{bk_myBackingBean. dependent.medicalData.displayQ2Answers [item.questionNumber]}".

    I checked the value of #{item.questionNumber} is just out of view it in the interface user as described above and also I tried to exit with a value in the hashtable and it is successfully recover and displayed in the user interface. (Those who are in the < tr:panelBox > block above) and the hastable displayQ2Answers is of type < String, String >. So far so good, but when I tried to link in what follows the radios and the PanelGroupLayout, he throws NullPointerException. But if I tried to link explicitly radio to an item in the hash table instead to use the key "" EL:

    "Binding =" #{bk_myBackingBean.dependent.medicalData.q2NoRdos [Item.questionNumber]} '-> binding = "#{bk_myBackingBean.dependent.medicalData.q2NoRdos ['q2a']} '

    "Binding =" #{bk_myBackingBean.dependent.medicalData.q2YesRdos [Item.questionNumber]} '-> binding = "#{bk_myBackingBean.dependent.medicalData.q2YesRdos ['q2a']} '

    then the page is rendered with success.

    I'm pretty confused at this point: as you can see, when it relates to a hash table and hastable type < String, String >, I'm able to retrieve the element in the Hashtable using EL for 'key', but when the binded hastable is type of < String, CoreSelectBooleanRadio > or < String , CorePanelGroupLayout > (this is not shown in the above code segment), the link seems defective. I think with the exception of pouinter NULL can be caused by the initialization of the bound element, but when I replace the EL with the string for the key, as shown above, the page works. so apparently not caused by initialization

    . What follows is an overview of the data model, this is how I initialize the option button:

    public class MedicalInfo {}

    == getters and setters are defined but not shown here

    / / theare hash tables used to be linked to radio buttons

    Hashtable < String, CoreSelectBooleanRadio > q2NoRdos = new Hashtable < String, CoreSelectBooleanRadio > ();

    Hashtable < String, CoreSelectBooleanRadio > q2YesRdos = new Hashtable < String, CoreSelectBooleanRadio > ();

    / / these are the items that are stored in above hash for the actuall link tables

    private CoreSelectBooleanRadio q2aNoRdo = new CoreSelectBooleanRadio();

    private CoreSelectBooleanRadio q2aYesRdo = new CoreSelectBooleanRadio();

    and in the constructor, except for the hash for the binding tables:

    public MedicalInfo() {}

    ...

    q2NoRdos.put ("q2a", q2aNoRdo);

    q2YesRdos.put ("q2a", q2aYesRdo);

    ...

    }

    Where could I have missed or done wrong? Any hint is appreciated!

    Thank you

    Shawn

    I'm pretty confused at this point: as you can see, when it relates to a hash table and hastable type of , I'm able to retrieve the element in the Hashtable using EL for 'key', but when the binded hastable is type of or (this is not shown in the above code segment) the link seems defective. I think with the exception of pouinter NULL can be caused by the initialization of the bound element, but when I replace the EL with the string for the key, as shown above, the page works. It is not caused by the initialization

    Well, #{number} is not resolved in the same phase as the 'binding' property ("compulsory" is resolved in the phase of restore view and variable "var" is resolved in the rendering phase).

    Dario

Maybe you are looking for

  • not found network controller driver and a wi - fi connection does not work? I have a cq57 help - 383sq.please

    Hello I have a Presario CQ57-383SQ and in the Device Manager, network controller has no driver and I'm not and my WIFI is not working it shows that it is disabled in the Device Manager I have Jules Destrooper is because of the network controller driv

  • Page color Laserjet Pro CM1415fnw covers in cyan when left.

    I have a CM1415fnw pro Color Laserjet started dumping toner cyan on all print jobs. You can still see the entire job behind a wall of blue. It prints a few jobs if the printer is off and unplugeed for a little while but when left will do as shown abo

  • Windows Media Player won't start!

    My media player won't start. He made over the years, but not today. EU in my taskbar and I can play but I can't maximize it upward on my screen. No idea why? JOH.

  • Download via FTP-host problems

    I have very often (most of the time in fact) a Web site through the host FTP download problems. I made changes are often not uploaded etc. It is a common problem or am I the only one?

  • How can we find the query

    Hello As part of the optimization of performance, I want to find the query using pid is there any display. And the level of the os I received SUPERIOR command, using OS level pid can we find the query? HELLP me... Thank youSrini...