[PySide] animate QStackedLayout?

Aaron Richiger a.richi at bluewin.ch
Sat Apr 7 17:23:57 CEST 2012


Hello Frank!

I slightly changed my code to your new informations and added comments 
for better understanding;-)! I also changed the sorting method to show 
you a possibility to separe checked from unchecked checkboxes. Because I 
first thought, that multiple pages must be visible at once, I created 
two versions, but according to your mail, the second possibility will 
meet your requirements closer I guess. But the multi-version might be 
interesting for others:

Mutliple pages visible:
http://pastebin.com/hW0zeL4P

Only one page visible:
http://pastebin.com/cjn0UuA9

Easter-greetings








Am 07.04.2012 01:51, schrieb Frank Rueter | OHUfx:
> I agree, it does seem off, which is why I'm throwing it out here to 
> get some ideas on how to tackle this from more experienced peeps.
>
> I will try to clarify what I'm after:
> The idea is to have a collection of buttons per category, let's say a 
> "page" of buttons. When the category is chosen via the buttons on the 
> left, the requested page with buttons slides into view pushing the 
> current one out of view. It's like an animated toolbox.
>
> I like your suggestion, will investigate.
>
> Cheers,
> frank
>
>
>
> On 6/04/12 11:31 PM, Sebastian Elsner wrote:
>> This Approach seems really off, Frank. I am not really getting what 
>> you want to do, maybe you can give us the specific purpose of this... 
>> What I could imagine is using a QScrollArea, which makes a 
>> QGridLayout scrollable.
>>
>>
>> Am 06.04.2012 09:13, schrieb Frank Rueter | OHUfx:
>>> yes, I think I'm starting to get it, thanks.
>>>
>>> So here is a very rough and ugly test using a single animated table 
>>> (feel free to laugh):
>>> http://pastebin.com/PbZ8ismH
>>>
>>> I am trying to see if it's feasible to stuff all my widgets into one 
>>> big table, then animate the table's position so that only the 
>>> requested column(s) are within the view according to which button is 
>>> pushed on the left hand side. Obviously I'd have to hide the headers 
>>> and lines etc. (no idea how to do that yet either).
>>>
>>> What do people think how best to approach this? The above doesn't 
>>> feel right and I'd have to do a lot of hacking to make this look 
>>> pretty (though the animation is easy to control as it's just one 
>>> widget). Or should I rather create one table per button and move 
>>> them around as a group (I guess I could hide the unwanted tables as 
>>> well then).
>>>
>>> Or does anyone have completely different ideas how to tackle this? 
>>> I'm sure there is a way more elegant solution.
>>> I'm  still trying to stick to default QT stuff before I dive into Qt 
>>> Quick and such.
>>>
>>> Thanks for all the help and pointers so far!
>>>
>>> frank
>>>
>>>
>>> On 4/6/12 6:28 PM, Tibold Kandrai wrote:
>>>> Hi!
>>>>
>>>> Exactly! Instead of QAnimationGroup you have to use 
>>>> QParallelAnimationGroup 
>>>> <http://qt-project.org/doc/qt-4.8/qparallelanimationgroup.html>orQSequentialAnimationGroup 
>>>> <http://qt-project.org/doc/qt-4.8/qsequentialanimationgroup.html>.
>>>> Or you can create your own group by subclassing QAnimationGroup if 
>>>> you have special needs. :)
>>>>
>>>> Cheers,
>>>> Tibold
>>>>
>>>> On 06/04/2012 06:45, Frank Rueter | OHUfx wrote:
>>>>> I think I found the problem in the fact that it's an abstract 
>>>>> class and not meant to be used directly.
>>>>> the joy of learning new stuff....
>>>>>
>>>>>
>>>>> On 4/6/12 4:05 PM, Frank Rueter | OHUfx wrote:
>>>>>> Thanks again for this tip Tibold. It seems to be what I'm after, 
>>>>>> though I just discovered that QAnimationGroup doesn't seem to be 
>>>>>> supported in PySide. I got this error when I tried to create an 
>>>>>> instance of it:
>>>>>>
>>>>>> NotImplementedError: 'QAnimationGroup' represents a C++ abstract 
>>>>>> class and cannot be instantiated
>>>>>>
>>>>>>
>>>>>> I will try and add all widgets to one "page" widget (whatever 
>>>>>> that may be, I need to find out yet), and then apply the 
>>>>>> animation to that.
>>>>>> Fingers crossed...
>>>>>>
>>>>>> Cheers,
>>>>>> frank
>>>>>>
>>>>>>
>>>>>> On 4/4/12 7:29 PM, Tibold Kandrai wrote:
>>>>>>> Hey!
>>>>>>>
>>>>>>> Try QtAnimation:
>>>>>>> http://qt-project.org/doc/qt-4.8/animation-overview.html
>>>>>>>
>>>>>>> I use it with in a QGraphicsWidget, but this should work everywhere AFAIR.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Tibold
>>>>>>>
>>>>>>> On 04/04/2012 06:46, Frank Rueter | OHUfx wrote:
>>>>>>>> Hi everyone,
>>>>>>>>
>>>>>>>> I'm very new to Qt/PySide and am wondering if it's possible to add an
>>>>>>>> animation effect to, let's say, QStackedLayout, for when the page
>>>>>>>> changes. I guess it'd something similar to the way the AppStore works.
>>>>>>>>
>>>>>>>> In this example I'd like to see the new button "push" the old button out
>>>>>>>> of view when the combobox changes:
>>>>>>>> http://pastebin.com/i5sFgQzE
>>>>>>>>
>>>>>>>> I'm happy to take a good ol' fashioned RTFM, I'm just having a hard time
>>>>>>>> finding the right bit of information out there.
>>>>>>>>
>>>>>>>> Any help would be greatly appreciated.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> frank
>>>>>>>> _______________________________________________
>>>>>>>> PySide mailing list
>>>>>>>> PySide at qt-project.org
>>>>>>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> PySide mailing list
>>>>>>> PySide at qt-project.org
>>>>>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> PySide mailing list
>>>>>> PySide at qt-project.org
>>>>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> PySide mailing list
>>>>> PySide at qt-project.org
>>>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>>>
>>>> -- 
>>>> Tibold Kandrai,
>>>> CEO @ Dotz Team I/S,
>>>> Software developer, consultant
>>>>
>>>>
>>>> _______________________________________________
>>>> PySide mailing list
>>>> PySide at qt-project.org
>>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>>
>>>
>>> _______________________________________________
>>> PySide mailing list
>>> PySide at qt-project.org
>>> http://lists.qt-project.org/mailman/listinfo/pyside
>>
>>
>>
>> _______________________________________________
>> PySide mailing list
>> PySide at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/pyside
>
>
> _______________________________________________
> PySide mailing list
> PySide at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/pyside


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/pyside/attachments/20120407/0c9abefd/attachment.html>


More information about the PySide mailing list