# GUI design best practices?

**URL:** <https://forum.juce.com/t/gui-design-best-practices/6931>\
**Category:** The Projucer\
**Created:** [May 28, 2011, 8:38am UTC](https://forum.juce.com/t/gui-design-best-practices/6931 "2011-05-28T08:38:09Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![gluontronic](https://avatars.discourse-cdn.com/v4/letter/g/58f4c7/32.png) [@gluontronic](https://forum.juce.com/u/gluontronic)\
**Post date:** [May 28, 2011, 8:38am UTC](https://forum.juce.com/t/gui-design-best-practices/6931/1 "2011-05-28T08:38:09Z")

</div>

Hi there,  
I’m (almost) completely convinced by buying a commercial license because I intend to create & sell VST plugin.

I’d like to know several things about the GUI Design.

- how can you change the gtk (create your own sliders etc ?) ? does it exist a PSD customization way to do that ?
- at which point do you begin your gui? each time you create a variable for the user? at the end ?

any tips & experiencies would be appreciated 🙂

---

<div class="post-metadata">

**Author:** ![masshacker](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/masshacker/32/650_2.png) [@masshacker](https://forum.juce.com/u/masshacker)\
**Post date:** [May 30, 2011, 6:56pm UTC](https://forum.juce.com/t/gui-design-best-practices/6931/2 "2011-05-30T18:56:26Z")

</div>

> [@](#):
>
> - how can you change the gtk (create your own sliders etc ?)

Use the LookAndFeel class. To understand this: build the juce demo. On it’s titlebar, click on Demo-\>Widgets. And then click on Look-and-feel-\>Use the old…  
As you can see the sliders appear different. Now you just need to read the manual for LookAndFeel.  
And this could help: [http://www.rawmaterialsoftware.com/viewtopic.php?f=2&t=4755&hilit=slider](http://www.rawmaterialsoftware.com/viewtopic.php?f=2&t=4755&hilit=slider)

> [@](#):
>
> - at which point do you begin your gui?

It depends.

---

<div class="post-metadata">

**Author:** ![gluontronic](https://avatars.discourse-cdn.com/v4/letter/g/58f4c7/32.png) [@gluontronic](https://forum.juce.com/u/gluontronic)\
**Post date:** [May 30, 2011, 9:02pm UTC](https://forum.juce.com/t/gui-design-best-practices/6931/3 "2011-05-30T21:02:53Z")

</div>

thanks for your feedback  
building juce demo 🙂

---

<div class="post-metadata">

**Author:** ![gluontronic](https://avatars.discourse-cdn.com/v4/letter/g/58f4c7/32.png) [@gluontronic](https://forum.juce.com/u/gluontronic)\
**Post date:** [June 5, 2011, 2:37pm UTC](https://forum.juce.com/t/gui-design-best-practices/6931/4 "2011-06-05T14:37:12Z")

</div>

is there a little doc or tuto to use Jucer with best practices?  
what is the process to follow, I mean?

for instance, I’m creating a synth with some knobs (volume, pitch offset, cutoff + Q LPfilter)  
How can I link those values to those knobs?

The instance name of objects would be required, I guess… I know that  
But, should I code the whole redraw, listeners etc ? or is it included in those classes already existing ?
