PySide/sv

PyQt är en python modul som tillåter python applikationer att skapa, komma åt och ändra Qt applikationer. Du kan använda den för till exempel att skapa dina egna Qt program i python, eller till att komma åt och ändra gränssnittet i en körande qt applikation, som FreeCAD.

Genom att använda PyQt modulen inifrån FreeCAD, så har du därför full kontroll över dess gränssnitt. Du kan till exempel:


 * Lägga till dina egna paneler, widgetar och verktygslådor
 * Lägga till eller gömma element i existerande paneler
 * Ändra, omdirigera eller lägga till anslutningar mellan alla dessa element

PyQt har en extensiv API dokumentation, och det finns många övningar på nätet för att lära dig hur det fungerar.

Om du vill arbeta på FreeCAD gränssnittet, så är den första saken du ska göra att skapa en referens till FreeCAD's huvudfönster:

Sedan så kan du till exempel lista igenom gränssnittets alla widgetar:

Widgetarna i ett Qt gränssnitt är vanligtvis nästlade i "behållar" widgetar, så vårt huvudfönsters barn kan själva innehålla andra barn. Beroende på widgettyp, så finns det många saker du kan göra. Kontrollera API dokumentationen för att se vad som är möjligt.

Att lägga till en ny widget, till exempel en dockWidget (som kan placeras i en av FreeCAD's sidopaneler) är lätt:

You could then add stuff directly to your widget:

But a preferred method is to create a UI object which will do all of the setup of your widget at once. The big advantage is that such an UI object can be created graphically with the Qt Designer program. A typical object generated by Qt Designer is like this:

To use it, you just need to apply it to your freshly created widget like this: