Jump to content

jpdrolet

Members
  • Posts

    367
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by jpdrolet

  1. If I remember correctly, you can rip the internal LLB into file VIs using the library manager, make any replacements/wrapping and rebuild the application.
  2. Back on topic, I think that what you need to determine from which VI Tool menu a tool was launched is the Application property App.MenuLaunchVI. It returns the name of the launching VI. Use that name to get a reference.
  3. Discover how the TCP port of BabVIEW reveals a sweet obsession of mine.... Seasons Greetings!
  4. The wires on the diagram don't have any formatting information from the control which data comes from. That's perfectly alright because the actual content of a control is not affected by how data is displays. I wouldn't like if a number was modified by the number of digits of precision it is displayed on the control... The same applies to string display. There is no so called difference between hexadecimal and string input. That's the same data with different display format for the user's eye only. However, if you want to use the string as it is displayed, you can use the Text.Text property: This property is the string content as it is displayed in the control. This is the exact formatted content, including the space separator every 4 character.
  5. And which service is denied actually?
  6. Anti-spam campaign put on hold here Net Wars! A New Hope and Spammer Strikes Back Now playing in a computer near you.
  7. Customer wish... By the way, it was asked that only Delete would be used but it is already a standard key used to edit the number. That would be confusing... Thank you very much hfettig :thumbup:
  8. But still, there are controls in the array and they could generate UI events. You can type in or click a control even if the array is empty. You can know which element is currently edited (a specific property for that would be convenient) so you could act on this element according to the event..
  9. I want to replace the value of a numeric control (inside an array of clusters) with NaN when the user hits Shift-Del. The event structure (LV7) doesn't allow to select controls inside an array. Is that possible? Otherwise, the solution I see is to display array elements in a separate cluster and copy/replace element as the index changes.
  10. jpdrolet

    Riddle

    That's an easy one. The brute force solution: If you give more thought to the problem, you search for a number N divisible by 7 and (N-1) is divisible by 2,3,4,5 e.g.60. It has the form 60*n+1 so you find it with this simpler code: :!:
  11. The correct syntax to test an equality is if (h==75) . As written, if (h=75) assigns 75 to h and tests its value to TRUE, since it is different from 0.
  12. Polling is fine. However, be careful when comparing to exactly 4:00:00 e.g. if the system is busy and the loop only execute at 4:00:01 (skipping 4:00:00) , you'll miss the condition. Maybe time >= 4:00:00 is better. If you do not want to poll, you can have a parallel process generate an event when it is time to log. For example you wait for a dummy notification with the timeout set to expired at 4:00:00. There is no polling and when the wait times out, execute your log.
  13. jpdrolet

    I'm Daddy

    So you have upgraded Spouse 1.0 to Mom 1.0 which spawned child process Kid 1.0. You'll need a lot of system resources! Congratulations!
  14. The credit goes to njkirchner that brought this setting to our attention here. * Directs a spotlight on njkirchner's face* Where did your get that information!
  15. The newly found ini settings allowmultipleinstances=True allows to run multiple instances of LabVIEW or Run-Time executable. This has a side effect when the application is associated to a file extension (a pet topic of mine). Without this setting, when a file extension is associated to a LabVIEW application, one could open the file within the application by reading the command line. However, double-clicking on a file didn't have effect when the application was already running. A second application was needed to have the same effect (see link above). With this setting, now one can easily open one instance of the application each time an associated file is clicked on. :!: :thumbup:. However, it is often desirable (and memory efficient) that all files being opened in the same application space. In this case the application can be set to detect a TCP Server when an instance is launched. If the TCP Server doesn't exist, the application starts normally, opens the file on the command line and starts the TCP Server. However, if the TCP Server does respond (an instance is previously running) then the file on the command line can be sent to the running instance via TCP and opened in the first instance (the second instance then quits). That does have the advange of 0) handling files without the need of a second application 1) (yet to test) the user can select multiple files in the explorer and open them simultaneously. Using a second launching application, this one needed to be multiple instanciated for this to work. It was not possible with a LabVIEW launching application, hence the use of a vbscript in the above link. At last a satifying full G solution! I'll set an example soon.
  16. In fact it is not known until run-time that the referenced VI is or isn't in a run-time environment. In principle your application can legally invoke this VI method for a VI that is opened in a development LabVIEW environment. An application can't execute the VI method by itself, but can invoke it in another development environment. This question should be adressed in the FAQ... Edited to add picture
  17. The simplest implemetation of a splashscreen is to put it as a TLVI in the build app. It is not necessary for it to load the main application. For beginners they don't have to go in the details of opening VI references and the unavoidable FAQ of path changes in executables However I agree that loading the main application is a more flexible solution to control how your application loads and runs. *Edited for tags
  18. It is a documented feature of the application builder. When a VI beginning with About is found in the internal library, this VI will popup when the About builtin menu is selected. It is often the case that the splah screen is the same as the About screen so if you want this About VI to be displayed at startup, include it as a Top Level VI (TLVI) in the build because all TLVIs are opened and run at startup. If you want different screens for splash screen and About, include the splash VI as TLVI and About as Dynamic VI. The About VI must be idle to be displayed so it can't be part of the running hierarchy (it is run dynamically). It has been suggested that the splashscreen loads the main application. It is not necessary since if both splashscreen and main VI are TLVIs, they'll load and run simultaneously at startup. If the splash screen is lightweight and opens quickly, it will also prevent the "loading..." screen to appear when the main application takes too long to load and open its FP.
  19. In a built application, the splash screen can simply be added as a second modal top level VI. Name this VI with the prefix "About " and this VI will also replace the LabVIEW Run-Time screen when the menu item About... is selected,
  20. Actually I planned that users could upload and run VIs on other users' computer. You could do funny things like popups, opening CD trays when someone type a certain word, or a platform independant spambot. :laugh:
  21. Hi Paulo, I have posted the code for the BabVIEW server here. You could use the same technique: every time a new array element is available, notify its value to all opened TCP connections. Take a look at the code and feel free to ask more questions (Sorry, PM seems to be down) Jean-Pierre
  22. Hi! here is the whole code, client and server. Download File:post-447-1096944411.zip
  23. Just a question. Manually, this is done with Ctrl-C, Ctrl-V and RBM>Link to... I'm not familiar with scripting, but is it possible to invoke clipboard functions Copy and Paste and then change the control to which the property node is linked?
  24. Use "Create Constant" on the diagram, selecting a TCP refnum input/output/control Jean-Pierre
  25. Of course it needs a lot more features. User list and connection/deconnection messages are the first to come to mind. Then multiple chat rooms and personal messaging... That was a proof of concept, something I started to wire from scratch at 10PM and was working by 2AM. Could it be achieve that fast in any other language? :thumbup: :beer:
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.