Results 1 to 19 of 19

Thread: Using QSound::play("...") not working

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    okay I used a workaround due to lack of time to experiment. I used the system command from within Qt and used aplay utility.

    Now I get a key press sound on every keypress which I have handled in the event filter; because there I use the system command. But what should I do for the keys which are not handled by the event filter and which are internally handled by Qt. Like I have used a QScrollArea. The scroll bar navigation takes place with the up and down arrow keys. This is internally handled by Qt and hence no sound is played here. Is there anyway I can play sound here also? Ofcourse there is a way. Can anybody point out please.

    Please reply.
    Last edited by Charvi; 3rd April 2012 at 08:19.

  2. #2
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    Please reply.

  3. #3
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Install an event filter on the application object and intercept key events there.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  4. #4
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    No but then I will have to write the code for all the basic key press events also. That will be tedious and not desirable. Like then I will have to write event for scrolling; that's not going to be as smooth as the internal handling. It will also increase the lines of code.

    Reply soon.
    Last edited by Charvi; 3rd April 2012 at 10:37.

  5. #5
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Quote Originally Posted by Charvi View Post
    No but then I will have to write the code for all the basic key press events also.
    No, you won't.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  6. #6
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    Could you please give me an example or explain in more detail.

    "Install an event filter on the application object and intercept key events there. "

    How exactly?

  7. #7
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Quote Originally Posted by Charvi View Post
    Could you please give me an example or explain in more detail.

    "Install an event filter on the application object and intercept key events there. "

    How exactly?
    Sorry, an example of what? You did read the docs on how event filters work and you have seen examples of event filters in the docs before writing your two last posts, right?
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  8. #8
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    Right. So when I write that I have installed an event filter and I am writing the system command for all the key press events, it works; the sound is played when these particular events occur. My question was there are some events internally handled by Qt like the scrolling of the scroll bars of a QScrollArea. I do not get the key press sound over there and its obvious. Then you adviced to install event filter for those also. To which I replied that then once I override the basic Qt's event handling of a particular event I need to write the code for it. This means I need to write the code for the scrolling of the scroll bars of the QScrollArea also. Then you said "NO". I didn't understand your NO!!

  9. #9
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Quote Originally Posted by Charvi View Post
    My question was there are some events internally handled by Qt like the scrolling of the scroll bars of a QScrollArea. I do not get the key press sound over there and its obvious.
    I have no idea what you are talking about. All events are "handled internally by Qt". Qt doesn't handle any events "externally".
    Then you adviced to install event filter for those also.
    No, I haven't. I told you to install an event filter on the application object and not on any scroll area or anything like that.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  10. #10
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    By internally I meant by default. Like when we want to handle some events in our own way we install event filters. The events which we do not handle in them will be handled by Qt in a default way.

  11. #11
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Quote Originally Posted by Charvi View Post
    Like when we want to handle some events in our own way we install event filters.
    No, we reimplement event handlers. Event filters are for specific cases such as yours or for lazy people who don't care about quality of their code.

    The events which we do not handle in them will be handled by Qt in a default way.
    Next time please use the term "by default" and not "internally" if you want to say "by default". And now please install an event filter on the application object and have your problem solved.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  12. #12
    Join Date
    Mar 2012
    Location
    India
    Posts
    102
    Thanks
    4
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: Using QSound::play("...") not working

    I accept. Will take care next time.

    BTW I don't get how event filters affect the quality of code?

  13. #13
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Using QSound::play("...") not working

    Quote Originally Posted by Charvi View Post
    BTW I don't get how event filters affect the quality of code?
    They can break encapsulation.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


Similar Threads

  1. Replies: 1
    Last Post: 7th April 2010, 21:46
  2. Replies: 3
    Last Post: 15th February 2010, 17:27
  3. Replies: 3
    Last Post: 26th April 2009, 17:54
  4. Replies: 3
    Last Post: 8th July 2008, 19:37
  5. Translation QFileDialog standart buttons ("Open"/"Save"/"Cancel")
    By victor.yacovlev in forum Qt Programming
    Replies: 4
    Last Post: 24th January 2008, 19:05

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.