I förra veckan så visade jag hur man hanterar lageregenskaper för vektordata i QGIS. I del 4 av dessa inlägg handlade det bland annat om de formulär som QGIS skapar när man skall visa och redigera attributdata.
Detta inlägg handlar om vad du kan göra om du inte är nöjd med dessa formulär.
Den här gången så tänkte jag börja med ett vektorlager från Geodata-portalen (geodata.se), som är Sveriges sätt att uppfylla kraven för INSPIRE.
I portalen finns det massor med visningstjänster men även mycket nedladdningsbara data. Jag tänker använda mig av ”skyddsrum” för det här inlägget.
När man tittar i attributen så ser man data som har med adressen att göra, sådant som kan kopplas till fastigheten och sådant som är mer specifikt för skyddsrummet.
Varför inte dela upp attributen efter detta i ett formulär med flikar?
Börja med att gå till lageregenskaperna och inställningarna för ”Fält”. Där väljer man ”Dra-och-släpp” designare. Detta öppnar ett nytt fält med tillhörande knappar.
Genom att klicka på plusknappen kan man namnge och skapa nya flikar i ett formulär.
Jag skapar ”Adress”, ”Fastighet” och ”Skyddsrum”.
Genom att i tur och ordning markera flikarna till höger kan man klicka på tillhörande lager till vänster och ”flytta över” dessa under rätt flik med pilknappen (pil höger). När alla lager finns på högersidan kan man klicka-och-dra dessa till den ordning och plats man önskar. I den version av QGIS jag använder så går det inte att dra-och-släppa direkt från listan till vänster, men det kanske fixas i senare versioner.
Man kan även passa på att fylla i Alias och välja att ändra redigeringstyp så att det bättre passar de data som efterfrågas.
Det formulär som nu skapats kommer upp när man redigerar lagret och skapar en ny punkt. Vill man även använda formuläret med verktyget ”identifiera objekt” så gör man en inställning i ”Inställningar”/”Alternativ”.
Under rubriken ”Kartverktyg” så kryssar man i rutan som gör att formuläret även används när ett unikt objekt identifieras. Träffar man flera objekt med verktyget så blir det det vanliga fönstret som dyker upp. Fördelen med att öppna formuläret på det här sättet är att om man ställt in lagret för redigering så kan man direkt i fönstret ändra de data som är kopplat till objektet.
Man kan även skapa ”grupper” med attribut på en eller flera flikar, och då skulle exemplet ovan kunna se ut så här i QGIS:
Observera att de data som laddas hem från Geodataportalen kan ha felaktigheter som måste fixas för att det som beskrivs ovan skall fungera. Exempelvis så fanns ett antal skyddsrum utan geometri med i mina data som jag helt enkelt fick ta bort för att snabbt få det att fungera.
Resten av detta inlägg bör du läsa först innan du testar själv, förklaringen blir uppenbar mot slutet.
Är man fortfarande inte nöjd med hur formuläret ser ut så kan man använda Qt4 Designer.
Använder man Linux så installerar man med kommandot:
sudo apt-get install qt4-designer
Starta designern och välj att skapa ett formulär med knappar (Dialog with Buttons…).
Dra och släpp ifyllnadsfält (input widgets) och texter (display widgets) för att designa ditt formulär. Se till att döpa alla inmatningsfält till samma namn som de attribut de skall kopplas till. När du är klar så sparar du formuläret som en ui-fil.
I ”Fält” delen av lageregenskaperna i QGIS så väljer man sedan ”Använd ui-fil” och pekar ut den nyss skapade formulärfilen. Nu får man upp det egna skräddarsydda formuläret i stället varje gång man skall fylla i nya attribut för skapade objekt.
Ja, eller skulle fått det om allt fungerar som det ska. Själv har jag bara lyckats krascha QGIS så fort jag skall visa ett eget formulär. Du kanske har bättre tur, eller så kan det vara något som fixas på sikt.
Tack för jättebra info! Har dock stött på ett problem, jag får till flikar, grupper etc men jag får ingen data i dem. Vad har jag gjort för fel?
Svårt att svara på utan mer detaljer, eller när man ser skärmen framför sig.
Har du flikar och grupper men inga fält eller texter i dessa? I så fall så skall du läsa igen under andra bilden ovan för att lägga till fält i dessa flikar/grupper.
Om du däremot har fält i dina flikar/grupper, men dessa är tomma när du använder identifiera, så kanske det saknas attributdata?
Jag kan nog inte hjälpa dig mer än så utan mer information, men läs artikeln igen och om det fortfarande strular så får du höra av dig igen med mer detaljer.