More String Control Scrollbar Bugs

In the series of bugs that will never be fixed but need to be posted for the record, here is a variant of the String Control horizontal scrollbar topic.
Take a String Control (works with Classic, Modern and Silver):
Show its horizontal scrollbar. That's not an immediate process, so here is the wya it goes in LV 2013:
- Show Properties
- Go to the Appearance Tab
- Uncheck "Wrap at word breaks"
- Check "Show horizontal scrollbar"
Here's the result:
Where's the scrollbar?
You have to grab one of the control edges, expand it VERTICALLY by one pixel and the container box with then snap to a size that accounts for the scrollbar height:
Expanding HORIZONTALLY has no effect:
If you try that with the System String Control, similar limitations apply but you get a bonus:
The one pixel tall string!

X. wrote:
That is probably a good guess. However, I would argue that if I go throught the trouble of opening the Properties Panel to ask for a horizontal scrollbar, I'd be happy to get the scrollbar added.
I have actually found out another oddity (which makes the behavior of the System String somewhat less outlandish):
If you take the default Silver String control, which has a height of 37 pixels, and expands it to 39 pixels or more, then following the procedure I described in my original post, the horizontal scollbar will be shown.
Like this:
Here I have painted the String background in red so that you can see that a 1 or 2 pixel string display area is available (like I described for the System string, but here, if you further manipulate the control, it will snap to a more reasonable height allowing you to type in something visible).
So, what I am saying is that there is not much coherence in what the algorithm considers a valid condition to show a scrollbar. Of course all this becomes very interesting when the font size is changed...
Well, you just illustrated exactly what I meant.  The scroll bar is as tall as the control itself is.  I think it is unavoidable though.  Just look at everything that has a scroll bar.  The scroll bar gets added to the INSIDE of the window that needs it, not the outside.
Bill
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.

Similar Messages

  • Scrollbars on string control

    How do I make my string control show scrollbars. When I right click on Visible Items the scrollbar is greyed out. I have tried both new and old LV style controls. I do have some controls which look exactly same but have scrollbars like source control under error cluster.

    Thanks,
    I should have tried it but I saw the option "limit to one line" was off so I thought I should be able to just enable the scrollbars, not whether LV can display it properly or not, that's another thing.
    Any way,
    Now how does one make the scrollbars move so I always show the test at the end. I read I can set Text.ScrollPosition
    to some large number and that will do the trick. Is that it? Or there is a way to find number of lines in a text box.

  • When and How to get the Text.ScrollPos value of a String control when scroll bar position changed

    Hi, 
    I'm working on a feature triggered by scroll bar position of a string control changed.
    But I could not find a good way to catch the scroll bar position changed event, 
    the scroll bar is controlled manually by mouse down → mouse move → mouse up, I want the get the Text.ScrollPos value when user mouse up, and compare with the maximum value.
    But the problem is,  mouse up on the scroll bar could not trigger String: Mouse up event!
    So I have to get the Text.ScrollPos continuously in the background in Timeout event, but I think it’s not efficient.
    Do you have any better idea on when to get the correct destination value of Text.ScrollPos?
    I plan to store the value of Text.ScrollPos in the bottom(maximum value) in a shift register, then compare the current Text.ScrollPos value with the max one.
    If it comes close to the bottom(90%~100% of the maximum value), then the close to bottom LED will turn on.
    Attachments:
    scroll bar pos changed.vi ‏15 KB

    Hello Cecilia,
    I don't think there is any build-in event for this.
    One solution would be to create your own user event at the initialisation of you main and launch a thread which is going to be pulling the value of your scrollbar position:
    Then you can build your main as if they were a scrollbar move event.
    And dont forget to close the thread and destroy the event at the end.
    Hope it helps.
    Attachments:
    Scrollbar event.PNG ‏10 KB

  • Any way to limit the input format for string control?

    Hi there,
      I need a control for the user to input some string with only alphabets and no special characters. Also need to control the number of characters to input. I search it and see someone use Xcontrol to achieve that but I really have no idea how to get that. Any other way to get this function works on string input?

    prvs wrote:
    Dear Altenbach,
    The VI that you have posted in (Max8Discard.vi) in Limiting Input String Length
    limits the entry of string control to required length but it doesnt limit the entry of special characters.
    If you have any simple way to do the same it will be very helpful
    Thanks in advance...!!!
    Regards,
    Praveen PRVS
    Just change the check after the Lexical Class function.  If you just want numbers and letters, then use the In Range & Coerce function to check for class numbers 3 through 5.  Play around with the logic some more until you get what you need (I'm thinking that AND should be an OR).
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • On-Screen Keyboard and a String Control

    I am experiencing some odd behavior when I use the On-Screen keyboard (OSK) and a string control.
    I am developing a application that will need to use the OSK to enter in some data on a touch screen monitor with no physical keyboard. I have a Event-Driven State Machine set up to the Key Down event when a word/characters are entered and the user presses the Enter Key on the OSK. I noticed if I probe the VKey wire wuen I press the Enter Key on the OSK, it comes across as a Return press. No big deal I thought, just see if the Return Key is pressed and continue on.
    When I went to test my program, I noticed that my values were displaying as if nothing was entered. Digging a little further, I noticed that my original data is still there if I press the Backspace Key and remove the Return command. Probing the string wire within the string control indicates that that the value comes back as a empty string in my string control even though my entire string is physically still there. I can press the backspace key (deleting the carriage return) and see my original text. What I think is happening is when I press the Return Key on the OSK, it inserts something and moves my text either up or down and when I use the property node to extract the data within the string control, I get a empty string.
    How have you gotten around this? I'd like to hear your solutions.
    Solved!
    Go to Solution.

    Since you marked Jarle's message as the solution, I hope it means your happy and he's helped you solve your problem.
    I had never seen the OSK app before.  It looks like it can be very useful, but these other issues like how to programmatically get into it, or out of it with a task kill seem like they are a bit of a hack to work with something that shows so much promise.
    If these issues are too big, consider making your home pop-up keyboard as a LabVIEW VI.  It would be a little bit of work, but not so bad.  I've made a pop-up numeric keyboard that I've used in a few apps of mine.  Of course that is fewer keys to layout and deal with.  And I didn't need decimals for what I was doing so I didn't have to program that which adds a little complication.
    A pop-up keyboard might actually be easier, other than having 3-4 times the number of keys depending on how many symbols you need to deal with, and if you need to deal with CAPS, or CAPS lock or whatever.
    There is also a chance that someone may have done something already.  A google search might find something.  It is likely in the NI community if it exists.  If you can find something that works or is close to what you want, it might be better than using this OSK executable.
    Just some ideas to toss out there.

  • How can labview update the string control (text-edit box) after we have pressed the carriage return key on the keyboard during text-editing within that box?

    Dear readers,
    I have been trying to work out how to get labview to detect the event when a 'string' control has been modified, where the user has finished editing the string either by 1) pressing the enter key on the keyboard, or by 2) taking the focus away from the string control again. For example.. if I use the mouse to click on the string control and then I type 1234 into the box, I would like to have a routine that does something once the user hits the Enter key of the keyboard, or when the user takes the focus away from the string control again by clicking on something else. I would like the routine to respond even when the user didn't change anything in the text box (such as when we mouse-click on the edit box to go into edit mode, and then mouse-click on something else to remove the focus with no changes to the contents in edit-box).
    The purpose of my routine is to have a edit-box for a user to change for example the centre-frequency of a vector network analyser, so that the centre-frequency of the network analyser can change once the user finishes entering a new value in the text-edit box by hitting Enter key after the number is keyed in. Even if the user has clicked on the edit box, but changes their mind by mouse-clicking on something else to remove focus from the edit box, I would still like labview to detect the event when the control loses focus, so that the centre frequency can be updated anyway (to the same value that was already in the edit box).
    So far, I've tried set the string control option to 'limit to single line', so that I can try to scan for a carriage return .. '\n' ... pattern in the string. Unfortunately this doesn't work because labview doesn't seem to attach the '\n' to the end of that single line.
    Could someone please suggest ways to set a flag when a user hits Enter during text-edit mode of a string control, or when focus has been removed from the string control?
    While I've only described my problem for controlling a single control parameter on the gpib device, I'd like to make this feature work so that I can do the same kind of thing with other control parameters as well.
    Thanks so much in advance.
    Kenny

    Hi Kenny,
    instead of using the event structure, you can directly achieve to what you want by the KeyFocus property of the string control.
    - Enable Limit to single line option
    - Create the property KeyFocus in read mode and connect an indicator
    Each time you click on the string to modify it KeyFocus is True; when you click away or hit Enter KeyFocus is False.
    You can toggle your settings when KeyFocus changes from True to False.
    Alberto

  • How to search all files in folders/subfolders for one or more strings?

    I have a list of files (full path and file name) in Column D of my worksheet.  I'm trying to figure out how to run some code to open each file in this array (starting on D14 and going down), search for one or more strings, and then put an "X"
    in Column I, in the same row as the file name.
    How can I do that?
    I experimented with a few samples of code.  It seems pretty easy to do it in one folder, but not all sub folders.  The folder/subfolder is setup a specific way for a specific purpose.
    Knowledge is the only thing that I can give you, and still retain, and we are both better off for it.

    Below is an example that allow you to search a directory and its subdirs txt files(you can change this), read its lines and search for specific word:
    using System;
    using System.IO;
    using System.Linq;
    class Program
    static void Main(string[] args)
    try
    var files = from file in Directory.EnumerateFiles(@"c:\", "*.txt", SearchOption.AllDirectories)
    from line in File.ReadLines(file)
    where line.Contains("Microsoft")
    select new
    File = file,
    Line = line
    foreach (var f in files)
    Console.WriteLine("{0}\t{1}", f.File, f.Line);
    Console.WriteLine("{0} files found.", files.Count().ToString());
    catch (UnauthorizedAccessException UAEx)
    Console.WriteLine(UAEx.Message);
    catch (PathTooLongException PathEx)
    Console.WriteLine(PathEx.Message);
    https://msdn.microsoft.com/en-us/library/dd997370%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396
    Fouad Roumieh

  • Is there a way to force the cursor into a string control when a vi is called

    In a .vi I'm wrighting I need to input a new serail number at the beginning of each run. Is there a way to force the cursor into the string control box every time the start screen returns? eliminating the need for the operator to move the mouse around and click.
    I would like to THANK all that have replied to my questions in the past. It has been a big help!
    Thanks
    TeBlues

    ah, problem solved.  what a community.
    Message Edited by Space_Flight on 11-20-2006 10:08 AM
    Attachments:
    keyfocus.jpg ‏83 KB

  • How to save data in a string control?

    I want to save data in a string control or indicator. I know that I can rt-click and make the data default. But can it be done through a proberty node or something else when the program is running?

    There isn't a "Make Current Value Default" method that you can invoke programmatically, this would require your VI to be saved when it was closed, which obviously couldn't be done if it had been built into an executable.
    You could read the values from the controls/indicators and save them in a .ini file using the Configuration File VIs on the File I/O palette, and have some code at the start of your program that reads the values from the file and puts them into the objects using local variables.

  • I would like to do a program that have one string control and one string indicator, any character that I type in the string control in the same time it will be appear in another string (indicator). How can help me?

    I would like to do a program that have one string control and one string indicator, any character that I type in the string control in the same time it will be appear in another string (indicator). How can help me?

    Why not use an event
    Add a While Loop, inside the loop add the Event Sructure.
    Now in the event structure selecd the String Controls.value change event to
    react
    and the new value inside the event that you get,( connect to the String
    indicator box.
    On Sun, 10 Aug 2003 15:58:47 -0500 (CDT), WiltonFilho wrote:
    > I would like to do a program that have one string control and one
    > string indicator, any character that I type in the string control in
    > the same time it will be appear in another string (indicator). How can
    > help me?
    >
    > I would like to do a program that have one string control and one
    > string indicator, any character that I type in the string control in
    > the same time it will be appear in another string (indicator). How can
    > help me?
    >
    Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/

  • One or more activex controls could not be displayed because either

    Hi.
    I don't know if this is the right forum for my problem.
    Anyway,
    I have a problem with my Windows Services.
    Each time when I launch Windows Services window, I get a warning:
    One or more activex controls could not be displayed because either:
    1. your current security settings prohibit running activex
    controls on this page, or
    2. you have blocked a publisher of one of the controls.
    as a result, the page may not display correctly.
    The warning pop-up opens only when I click on Extended tab.
    The problem has nothing to do with IE security, because I can open pages with ActiveX controls on them and so.
    I have installed Spybot spyware/malware removal tool. Then uninstalled it.
    I'm not sure if this is the cause of the problem. But I presume it is.
    So, may be someone was facing the same problem and knows the cause for it.
    Thanks.

    Unlike the rubbish that was stated before this post, this one works.  This is the solution and Jishnu is brilliant.  Thanks a million, friend.
    Try to follow the KB article (KB907343).
    1.     
    Click Start, click Run, type regedit, and then click OK.
    2.     
    Expand the following registry subkey:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0
    3.     
    In the right pane, right-click 1200, and then click Modify.
    4.     
    In the Value data box, type either 1 or 0 to overwrite the existing value of 3. Then, click OK.
    Note If you type 1 in the Value data box, you will receive the following prompt when you start Microsoft Project:
    Do you want to allow software such as ActiveX controls and plug-ins to run?Additionally, you will receive this prompt at other times when you use Microsoft
    Project. If you do not want to receive this prompt, type 0 in the Value data box.
    The values 0, 1, and 3 are associated with the following behavior:
    0 = Enabled, or the action is permitted
    1 = Prompt
    3 = Disabled, or the action is not permitted
    5.     
    Quit Registry Editor.
    IF this does not works try to check the Internet Options..
    Try to reset the Internet Explorer.
    1. Click on
    Start & run.
    2. Type inetcpl.cpl & click
    ok
    3. Click on Advance Tab & click on
    Reset (Make sure to put the check mark on the delete the personal setting for IE8) then again
    reset.
    4. Click
    close.
    This should work.

  • One or more ActiveX controls could not be displayed because either:1 your current security settings prohibit running ActiveX controls on this page, or 2. You have blocked a publisher of one of the controls.

    hi All,
    i have one of the requirement for an application, we do upload some release not in file server and that is used in application link to see the note. in this note i have converted the Excel into .HTM format(web page). this was working fine, but from last
    two days all of a sudden we are recieving error as above.
    one or more ActiveX controls could not be displayed because either:1 your current security settings prohibit running ActiveX controls on this page, or 2. You have blocked a publisher of one of the controls.
    could anyone please help me on this.
    Thanks and Regards,
    krishnamurthy

    Hi,
    Actually Arnavsharma provided a operable method for you. But no luck, it's not invalid.
    Here I also offer you an method you can try.Please delete the extra (parasite) zone from the Zones subkey :
    Click Start , click Run , type regedit , and then click OK
    Expand the following registry subkey
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones
    Delete the extra (parasite) zone from the Zones subkey
    Note: The parasite zone is a pseudo-graphic number listed before zone number 0. The pseudo-graphic number looks like a miniature upper case "L"
    Close the registry editor
    Thanks!
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • How to restrict the copy & paste in string control?

    In my application user name & password string controls are there.After typing the username in string control it is copied and paste it in password string control .
    I like to restrict the string copy from one string control  & paste it into another string control ?
    How to do this?
    Kumar.
    Attachments:
    login.vi ‏11 KB

    These images illustrate anoth approach to inhibit the copying of text which is available in LV 8.2 (maybe 8.0)
    Ben
    Message Edited by Ben on 12-07-2006 10:12 AM
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Attachments:
    Edit_RT_Shortcut.JPG ‏60 KB
    Short_cut_Menu_edit.JPG ‏30 KB

  • String control not displaying special characters

    In Microsoft Word, I can display special ASCII characters such as ASCII 29 'GS' by using the keypad and holding the alt key while typing the ASCII numerical equivalent alt+029. I want to enter these characters into a string from a string control but I can't figure out if that is possible or if so, what settings to use.

    Hello,
    CVI only uses certain character sets and fonts because at the time that CVI was created, unicode did not exist.  You will have to choose the correct font and character set for the string control that will provide access to the character you are searching for.  For example, if you wanted the character produced from holding ALT + 29 (↔), you could set the string control's character set and font to "symbol".  Pressing ALT + 174 in CVI will then display the ↔ character.
    Regards,
    Shawn S. | NIC
    Instrument Driver/IVI PSE
    National Instruments

  • Enter text in other languages in String Control

    Hi,
    Is it possible to type text in other languages(chinese, japanese,hindi,etc...) in Labview 8.2. 
    In runtime I want to enter the text in String control.
    Regards,
    Raja 

    Please go through this and also see this thread from where i got this link.

Maybe you are looking for

  • Is it possible to add an 'Upload Image' option to a form in Muse CC 2014

    Hi, Im building a website via Muse and BC for a movie star client who has images of herself tattooed by ardent fans. Basically, the website is a gallery for fans showcasing the very best in inked images of herself on their skin. On the contact form i

  • Can't connect then comes up with can't mount.

    People, plugged my perfectly good 4th gen ipod on pc as normally as had been working fine but it asked me to reformat. so, did full restore and when then tried to connect it comes up with same message but when up dater comes up it takes ages before c

  • White stripe on black printing OfficePro8500

    Hi, I was printing my greetings cards, and an white stripe appears on the black printing. I Think that the printer have to be re calibrate, but how to do it. Thanks and happy new year Hubertus

  • Logic 9 - hanging notes after stop

    Everytime i stop an arrange, all the pads, basses etc keep playing (they just hang on the note where i stopped it.) its like 'note off when stop' is not working ... any ideas ?

  • BADI enhancement spot

    hi, I can see in a standard program the below code:     IF NOT badi_vlc_db_check IS INITIAL.       CALL BADI badi_vlc_db_check->read_before_write         CHANGING           disable_read_cv = disable_read_lv.     ENDIF. Please help me understand how d