Important: Please read the Qt Code of Conduct -

How to implement two separate widgets

  • I am creating a strip chart application. It is a tool to be used during development of other software. There are two logical sections:

    1. The controls where the user selects the parameter to display, upper and lower limits, time intervals, etc.
    2. The actual chart itself, the plotted points.
      After the strip chart has been started and configured, the user would like to hide the controls to provide more real estate on the monitor. Only the plotted points section is to be displayed.
      Can this be implemented?

  • Lifetime Qt Champion

    Yes you can easy hide the other widgets if needed.

  • Cool. What class or tool is used to create two widgets on the screen. Each one can be moved independently of the other. None of my searches were sufficiently sophisticated to solicit the answer.
    Buttons in widget "control" will control how widget "strip_chart" behaves, but once strip_chart is running a button in "control" will hide "control." And/or a toggling button in strip_chart will do the same. That provides more room on the monitor so we can watch and control other stuff while the strip chart is plotting the data.

  • Lifetime Qt Champion


    Are you thinking about something like QMdiArea ?

  • Lifetime Qt Champion

    There is also
    Dock Widgets

    However, its not 100% clear for how the layout is.
    Do you a picture or a some sort of design to show?

    Also when you say 2 widgets on the screen.
    Is that like 2 separate windows, or inside same app ?

  • I cannot copy from my work computer to my internet computer. If I can get Qt Designer working at home I will draw it up and paste in an image. That will be tonight's task at home, getting QT to run on my Windows box. I am using Centos Linux here at work. In the meantime:

    Imagine widget A with size 600 wide by 300 high. It has a set of radio buttons, push buttons, line edits, etc. When I set values in A it creates SIGNALS directed to SLOTS in B. A will need at least 10 controlling widgets. Example: A spin box or line edit in A can change the update rate of the strip chart, how fast it scrolls.

    Imagine widget B with the same size just below A. Each has a border and can be grabbed and moved with the mouse. B is where the strip chart graphics will be displayed, done in Open Gl. It has a pushbutton labeled "Hide A" that will cause widget A to be hidden. When pressed it changes its name to "Show A" which does the obvious.
    I am quite new at both Qt and OpenGL so maybe this question is more simple that it at first appears. Maybe not. I get to jump in on the deep end.

Log in to reply