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:

Du kan sedan lägga till saker direkt i din widget:

Men en föredragen metod är att skapa ett UI objekt som gör alla inställningar av din widget direkt. Den stora fördelen är att ett sådant UI objekt kan skapas grafiskt med Qt Designer programmet. Ett typiskt objekt som genererats av Qt Designer är som detta:

För att använda den, så behöver du bara tillämpa den i din nyss skapade widget som så här: