Ruby är ett kraftfullt programmeringsspråk som används flitigt inom webbutveckling, skript och automatisering. Men Ruby kan också användas för att bygga desktop GUI (Graphical User Interface) applikationer, vilket kan vara användbart för att skapa fristående applikationer eller för att lägga till ett användargränssnitt till ett befintligt Rubyapplikation.
I det här blogginlägget kommer vi att utforska grunderna för att bygga en desktop GUI-app med Ruby. Vi kommer att använda Tk-verktygssatsen, som ingår i Ruby som standard och ger ett enkelt sätt att skapa GUI-applikationer.
Att ställa in miljön
Innan vi börjar måste vi se till att vi har Ruby installerat på vårt system. Du kan ladda ner och installera Ruby från den officiella webbplatsen. När Ruby har installerats kan vi använda följande kommando för att installera Tk gem:
gem install tk
Detta kommer att installera Tk-verktygssatsen, som vi kommer att använda för att skapa vår GUI-applikation.
Skapa ett enkelt GUI
Låt oss börja med att skapa en enkel GUI-applikation som visar en knapp. Vi kan använda följande kod för att skapa ett nytt fönster och en knapp:
behöva 'tk' rot = TkRoot.new { title "Min app" }-knappen = TkButton.new(root) do text "Klicka här!" kommando { sätter "Knappen klickade!" } pack { padx 50; pady 50; sida 'vänster' } slutet Tk.mainloop
Den här koden skapar ett nytt fönster med TkRoot-klassen och ställer in titeln på "Min app". Vi skapar sedan en knapp med hjälp av klassen TkButton, ställer in texten till "Klicka på mig!" och anger ett kommando som ska köras när knappen klickas. I det här fallet skriver vi helt enkelt ut ett meddelande till konsolen. Slutligen använder vi packmetoden för att lägga till knappen i fönstret.
Den sista raden i koden, Tk.mainloop, startar Tk-huvudhändelsslingan, som väntar på händelser som musklick och knapptryckningar och svarar på dem.
Lägga till widgets till GUI
Vi kan lägga till fler widgets till GUI genom att skapa ytterligare instanser av Tk-klasser. Till exempel kan vi lägga till en etikett, ett inmatningsfält och ett textområde i fönstret med hjälp av följande kod:
behöva 'tk' rot = TkRoot.new { title "Min app" } etikett = TkLabel.new(root) do text "Ange ditt namn:" pack { padx 10; pady 10; sida 'vänster' } slutet inträde = TkEntry.new(root) do pack { padx 10; pady 10; sida 'vänster' } slutet knapp = TkButton.new(root) do text "Skicka in" kommando { sätter "Hej, #{entry.value}!" } pack { padx 10; pady 10; sida 'vänster' } slutet text = TkText.new(root) do bredd 40 höjd 10 pack { padx 10; pady 10; sida 'vänster' } slutet Tk.mainloop
Denna kod skapar en etikett med texten "Ange ditt namn:", ett inmatningsfält för användaren att mata in sitt namn, en knapp för att skicka formuläret och ett textområde för att visa resultatet. Metoden entry.value används för att hämta det värde som användaren angett i inmatningsfältet.
Slutsats
I det här blogginlägget har vi lärt oss hur man bygger en desktop GUI-app med Ruby med hjälp av Tk-verktygslådan. Vi har skapat ett enkelt GUI med en knapp och lagt till fler widgets som etiketter, inmatningsfält och textområden. Med dessa verktyg kan du bygga kraftfulla och användarvänliga skrivbordsapplikationer i Ruby.