Qt World Summit: Submit your Presentation

Need GUI design as Skype in QT

  • We need to design the application like Skype.
    The design is:

    1. Left side one window (Shows the contact persons name in skype)
    2. Right side one window (Shows the chat discussions and etc in skype).

    How to design this?

  • Lifetime Qt Champion

    @Balaji-N What exactly is the problem?
    Use layouts http://doc.qt.io/qt-5/layout.html
    Use QListView on the left side for contacts.
    Use for example QTextView (or what ever you find is appropriate) on the right side.

  • Thanks for the reply.

    In left side, we have three tabs/buttons, chat, video call and one more. In right side,
    if chat is pressed, then right side shows the text display.
    If video call is pressed, then right side shows the video display.
    If Others is pressed, then right side shows the video kind of display.

    I am new to QT.

    Which approach is good for this?

    In right side, we need to change based on left side.
    I thought that split the main window to two windows using some QT methods. Then dynamically the change the values in right side using left side inputs.

    What about dockwidgets? When we we use this?

    Any other methods suitable to this?


  • Lifetime Qt Champion

    @Balaji-N For the right side you could use http://doc.qt.io/qt-5/qstackedwidget.html

  • @Balaji-N
    So, you want what widgets are displayed somewhere (on the right) to vary. The fact that which one to show depends on what button is pressed elsewhere (on the left) is a coding detail, dead easy.

    For the right-hand side I see three obvious possibilities:

    • Dynamically create a given widget when it's time to display it, and destroy it when you move to display a different widget.
    • Create the 3 different widgets initially but write code to only display one at any given time.
    • Use a QStackedWidget into which you have put the 3 created widgets to do the display of only one at a time for you.

  • QT

    I didn't know QuickTime player can be used for software development.

  • @jsulm and @JonB
    Thanks for the reply. I will check these options.

  • Is stackedWidget enough? or we need to go for MDI (Multiple Document Interface) or SDI (Single Document Interface).

    When we need to use SDI and MDI and stackedWidget?
    What is the diff between Document Interface and widgets?
    When we have to go for the document interface and when we have to go for the widgets?

  • There are a lot of examples and tutorials available if you install Qt and Qt Creator via the online installer.
    Explore examples that look similar to what you want to achieve, and then look how that is done within the example. If you have specific questions, ask them in this forum.

Log in to reply