{"id":37069,"date":"2023-03-09T09:00:52","date_gmt":"2023-03-09T09:00:52","guid":{"rendered":"https:\/\/www.railscarma.com\/?p=37069"},"modified":"2023-04-03T12:44:21","modified_gmt":"2023-04-03T12:44:21","slug":"creer-une-application-graphique-de-bureau-avec-ruby","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/fr\/blog\/creer-une-application-graphique-de-bureau-avec-ruby\/","title":{"rendered":"Cr\u00e9er une application GUI de bureau avec Ruby"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"37069\" class=\"elementor elementor-37069\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-55ae350 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"55ae350\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e438306\" data-id=\"e438306\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f47a560 elementor-widget elementor-widget-text-editor\" data-id=\"f47a560\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ruby est un langage de programmation puissant largement utilis\u00e9 dans le d\u00e9veloppement Web,<b> <\/b>scripts et automatisation. Cependant, Ruby peut \u00e9galement \u00eatre utilis\u00e9 pour cr\u00e9er des applications de bureau GUI (Graphical User Interface), ce qui peut \u00eatre utile pour cr\u00e9er des applications autonomes ou pour ajouter une interface utilisateur \u00e0 un syst\u00e8me existant. <a href=\"https:\/\/www.railscarma.com\/fr\/developpement-dapplications-de-rails-personnalises\/\">Application Ruby<\/a>.<\/p>\n<p>Dans cet article de blog, nous explorerons les bases de la cr\u00e9ation d&#039;une application GUI de bureau avec Ruby. Nous utiliserons la bo\u00eete \u00e0 outils Tk, qui est incluse par d\u00e9faut avec Ruby et fournit un moyen simple de cr\u00e9er des applications GUI.<\/p>\n<h2><b>Configuration de l&#039;environnement<\/b><\/h2>\n<p>Avant de commencer, nous devons nous assurer que Ruby est install\u00e9 sur notre syst\u00e8me. Vous pouvez t\u00e9l\u00e9charger et installer Ruby depuis le site officiel. Une fois Ruby install\u00e9, nous pouvons utiliser la commande suivante pour installer la gem Tk\u00a0:<\/p>\n<p><b style=\"font-style: inherit;\">gem installer tk<\/b><br><\/p>\n<p>Cela installera la bo\u00eete \u00e0 outils Tk, que nous utiliserons pour cr\u00e9er notre application GUI.<\/p>\n<h2><b>Cr\u00e9ation d&#039;une interface graphique simple<\/b><\/h2>\n<p>Commen\u00e7ons par cr\u00e9er une application GUI simple qui affiche un bouton. Nous pouvons utiliser le code suivant pour cr\u00e9er une nouvelle fen\u00eatre et un bouton\u00a0:<\/p>\n<p><b style=\"font-style: inherit;\">exiger<\/b><span style=\"font-size: 16px;\"> <\/span><b style=\"font-style: inherit;\">&#039;merci&#039;<\/b><b style=\"font-style: inherit;\"> racine = <\/b><b style=\"font-style: inherit;\">RacineTk<\/b><b style=\"font-style: inherit;\">.nouveau { titre <\/b><b style=\"font-style: inherit;\">&quot;Mon application&quot;<\/b><b style=\"font-style: inherit;\"> } bouton = <\/b><b style=\"font-style: inherit;\">Bouton Tk<\/b><b style=\"font-style: inherit;\">.new(racine) <\/b><b style=\"font-style: inherit;\">faire<\/b><b style=\"font-style: inherit;\"> texte <\/b><b style=\"font-style: inherit;\">\u00ab\u00a0Cliquez sur moi\u00a0!\u00a0\u00bb<\/b><b style=\"font-style: inherit;\"> commande { met <\/b><b style=\"font-style: inherit;\">\u00ab\u00a0Bouton cliqu\u00e9\u00a0!\u00a0\u00bb<\/b><b style=\"font-style: inherit;\"> } paquet { padx <\/b><b style=\"font-style: inherit;\">50<\/b><b style=\"font-style: inherit;\">; pady <\/b><b style=\"font-style: inherit;\">50<\/b><b style=\"font-style: inherit;\">; c\u00f4t\u00e9 <\/b><b style=\"font-style: inherit;\">&#039;gauche&#039;<\/b><b style=\"font-style: inherit;\"> } <\/b><b style=\"font-style: inherit;\">fin<\/b><span style=\"font-size: 16px;\"> <\/span><b style=\"font-style: inherit;\">Merci<\/b><b style=\"font-style: inherit;\">.boucle principale<\/b><\/p>\n<p>Ce code cr\u00e9e une nouvelle fen\u00eatre \u00e0 l&#039;aide de la classe TkRoot et d\u00e9finit le titre sur \u00ab Mon application \u00bb. Nous cr\u00e9ons ensuite un bouton \u00e0 l&#039;aide de la classe TkButton, d\u00e9finissons le texte sur \u00ab Click Me ! \u00bb et sp\u00e9cifions une commande \u00e0 ex\u00e9cuter lorsque le bouton est cliqu\u00e9. Dans ce cas, nous imprimons simplement un message sur la console. Enfin, nous utilisons la m\u00e9thode pack pour ajouter le bouton \u00e0 la fen\u00eatre.<\/p>\n<p>La derni\u00e8re ligne du code, Tk.mainloop, d\u00e9marre la boucle d&#039;\u00e9v\u00e9nements principaux Tk, qui attend des \u00e9v\u00e9nements tels que des clics de souris et des pressions sur des boutons et y r\u00e9pond.<\/p>\n<h2><b>Ajout de widgets \u00e0 l&#039;interface graphique<\/b><\/h2>\n<p>Nous pouvons ajouter plus de widgets \u00e0 l&#039;interface graphique en cr\u00e9ant des instances suppl\u00e9mentaires de classes Tk. Par exemple, nous pouvons ajouter une \u00e9tiquette, un champ de saisie et une zone de texte \u00e0 la fen\u00eatre en utilisant le code suivant\u00a0:<\/p>\n<p><b>exiger<\/b> <b>&#039;merci&#039;<\/b><b> racine = <\/b><b>RacineTk<\/b><b>.nouveau { titre <\/b><b>&quot;Mon application&quot;<\/b><b> } \u00e9tiquette = <\/b><b>\u00c9tiquetteTk<\/b><b>.new(racine) <\/b><b>faire<\/b><b> texte <\/b><b>&quot;Entrez votre nom:&quot;<\/b><b> paquet { padx <\/b><b>10<\/b><b>; pady <\/b><b>10<\/b><b>; c\u00f4t\u00e9 <\/b><b>&#039;gauche&#039;<\/b><b> } <\/b><b>fin<\/b><b> entr\u00e9e = <\/b><b>Entr\u00e9e Tk<\/b><b>.new(racine) <\/b><b>faire<\/b><b> paquet { padx <\/b><b>10<\/b><b>; pady <\/b><b>10<\/b><b>; c\u00f4t\u00e9 <\/b><b>&#039;gauche&#039;<\/b><b> } <\/b><b>fin<\/b><b> bouton = <\/b><b>Bouton Tk<\/b><b>.new(racine) <\/b><b>faire<\/b><b> texte <\/b><b>&quot;Soumettre&quot;<\/b><b> commande { met <\/b><b>\u00ab\u00a0Bonjour, #{entry.value}\u00a0!\u00a0\u00bb<\/b><b> } paquet { padx <\/b><b>10<\/b><b>; pady <\/b><b>10<\/b><b>; c\u00f4t\u00e9 <\/b><b>&#039;gauche&#039;<\/b><b> } <\/b><b>fin<\/b><b> texte = <\/b><b>TexteTk<\/b><b>.new(racine) <\/b><b>faire<\/b><b> largeur <\/b><b>40<\/b><b> hauteur <\/b><b>10<\/b><b> paquet { padx <\/b><b>10<\/b><b>; pady <\/b><b>10<\/b><b>; c\u00f4t\u00e9 <\/b><b>&#039;gauche&#039;<\/b><b> } <\/b><b>fin<\/b> <b>Merci<\/b><b>.boucle principale<\/b><\/p>\n<p>Ce code cr\u00e9e une \u00e9tiquette avec le texte \u00ab\u00a0Entrez votre nom\u00a0:\u00a0\u00bb, un champ de saisie permettant \u00e0 l&#039;utilisateur de saisir son nom, un bouton pour soumettre le formulaire et une zone de texte pour afficher la sortie. La m\u00e9thode Entry.value permet de r\u00e9cup\u00e9rer la valeur saisie par l&#039;utilisateur dans le champ de saisie.<\/p>\n<h2><b>Conclusion<\/b><\/h2>\n<p>Dans cet article de blog, nous avons appris <b>comment cr\u00e9er une application GUI de bureau avec Ruby \u00e0 l&#039;aide de la bo\u00eete \u00e0 outils Tk<\/b>. Nous avons cr\u00e9\u00e9 une interface graphique simple avec un bouton et ajout\u00e9 d&#039;autres widgets tels que des \u00e9tiquettes, des champs de saisie et des zones de texte. Avec ces outils, vous pouvez cr\u00e9er des applications de bureau puissantes et conviviales dans Ruby.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Articles Similaires<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Building Agentic AI Applications with Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/building-agentic-ai-applications-with-ruby-on-rails\/?related_post_from=41339\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/05\/Building-Agentic-AI-Applications-with-Ruby-on-Rails.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Agentic AI Applications with Ruby on Rails\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/05\/Building-Agentic-AI-Applications-with-Ruby-on-Rails.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/05\/Building-Agentic-AI-Applications-with-Ruby-on-Rails-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/05\/Building-Agentic-AI-Applications-with-Ruby-on-Rails-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/05\/Building-Agentic-AI-Applications-with-Ruby-on-Rails-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Building Agentic AI Applications with Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/building-agentic-ai-applications-with-ruby-on-rails\/?related_post_from=41339\">\r\n        Building Agentic AI Applications with Ruby on Rails  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Qu&#039;est-ce que Offliberty Ruby Gem et comment fonctionne-t-il ?\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/quest-ce-que-offliberty-ruby-gem-et-comment-fonctionne-t-il\/?related_post_from=41304\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Offliberty Ruby Gem\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Qu&#039;est-ce que Offliberty Ruby Gem et comment fonctionne-t-il ?\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/quest-ce-que-offliberty-ruby-gem-et-comment-fonctionne-t-il\/?related_post_from=41304\">\r\n        Qu'est-ce que Offliberty Ruby Gem et comment fonctionne-t-il ?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"M\u00e9thode Rails link_to : Le guide complet avec des exemples\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/rails-link_to-method-the-complete-guide-with-examples\/?related_post_from=41296\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples.png\" class=\"attachment-full size-full wp-post-image\" alt=\"M\u00e9thode Rails link_to\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"M\u00e9thode Rails link_to : Le guide complet avec des exemples\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/rails-link_to-method-the-complete-guide-with-examples\/?related_post_from=41296\">\r\n        M\u00e9thode Rails link_to : Le guide complet avec des exemples  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Solutions d&#039;int\u00e9gration d&#039;API tierces en Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/third-party-api-integration-solutions-in-ruby-on-rails\/?related_post_from=41264\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Third-Party-API-Integration-Solutions-in-Ruby-on-Rails.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Solutions d&#039;int\u00e9gration API en Ruby on Rails\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Third-Party-API-Integration-Solutions-in-Ruby-on-Rails.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Third-Party-API-Integration-Solutions-in-Ruby-on-Rails-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Third-Party-API-Integration-Solutions-in-Ruby-on-Rails-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Third-Party-API-Integration-Solutions-in-Ruby-on-Rails-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Solutions d&#039;int\u00e9gration d&#039;API tierces en Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/third-party-api-integration-solutions-in-ruby-on-rails\/?related_post_from=41264\">\r\n        Solutions d'int\u00e9gration d'API tierces en Ruby on Rails  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 10px;\r\n      padding: 10px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 14px !important;\r\n      color: #999999 !important;\r\n          }\r\n\r\n    .related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 14px;\r\n      color: #000000;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 12px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 2,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 2,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: false,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: false,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>","protected":false},"excerpt":{"rendered":"<p>Ruby is a powerful programming language that is widely used in web development, scripting, and automation. However, Ruby can also be used to build desktop GUI (Graphical User Interface) applications, which can be useful for creating standalone applications or for adding a user interface to an existing Ruby application. In this blog post, we will &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/third-party-api-integration-solutions-in-ruby-on-rails\/\"> <span class=\"screen-reader-text\">Solutions d'int\u00e9gration d'API tierces en Ruby on Rails<\/span> Lire la suite \u00bb<\/a><\/p>","protected":false},"author":1,"featured_media":37080,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1224],"tags":[],"class_list":["post-37069","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Building a Desktop GUI App with Ruby - RailsCarma<\/title>\n<meta name=\"description\" content=\"In this blog post, we will explore the basics of building a desktop GUI app with Ruby for creating standalone applications.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/creer-une-application-graphique-de-bureau-avec-ruby\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Building a Desktop GUI App with Ruby - RailsCarma\" \/>\n<meta property=\"og:description\" content=\"In this blog post, we will explore the basics of building a desktop GUI app with Ruby for creating standalone applications.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/fr\/blog\/creer-une-application-graphique-de-bureau-avec-ruby\/\" \/>\n<meta property=\"og:site_name\" content=\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RailsCarma\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-09T09:00:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-04-03T12:44:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@railscarma\" \/>\n<meta name=\"twitter:site\" content=\"@railscarma\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\"},\"headline\":\"Building a Desktop GUI App with Ruby\",\"datePublished\":\"2023-03-09T09:00:52+00:00\",\"dateModified\":\"2023-04-03T12:44:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/\"},\"wordCount\":530,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg\",\"articleSection\":[\"Blogs\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/\",\"url\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/\",\"name\":\"Building a Desktop GUI App with Ruby - RailsCarma\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg\",\"datePublished\":\"2023-03-09T09:00:52+00:00\",\"dateModified\":\"2023-04-03T12:44:21+00:00\",\"description\":\"In this blog post, we will explore the basics of building a desktop GUI app with Ruby for creating standalone applications.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg\",\"width\":800,\"height\":300,\"caption\":\"Building a Desktop GUI App with Ruby\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Building a Desktop GUI App with Ruby\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.railscarma.com\/#website\",\"url\":\"https:\/\/www.railscarma.com\/\",\"name\":\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"description\":\"RailsCarma is a Ruby on Rails Development Company in Bangalore. We specialize in Offshore Ruby on Rails Development based out in USA and India. Hire experienced Ruby on Rails developers for the ultimate Web Experience.\",\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.railscarma.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"width\":200,\"height\":46,\"caption\":\"RailsCarma\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/RailsCarma\/\",\"https:\/\/x.com\/railscarma\",\"https:\/\/www.linkedin.com\/company\/railscarma\/\",\"https:\/\/myspace.com\/railscarma\",\"https:\/\/in.pinterest.com\/railscarma\/\",\"https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cr\u00e9er une application GUI de bureau avec Ruby - RailsCarma","description":"Dans cet article de blog, nous explorerons les bases de la cr\u00e9ation d&#039;une application GUI de bureau avec Ruby pour cr\u00e9er des applications autonomes.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.railscarma.com\/fr\/blog\/creer-une-application-graphique-de-bureau-avec-ruby\/","og_locale":"fr_FR","og_type":"article","og_title":"Building a Desktop GUI App with Ruby - RailsCarma","og_description":"In this blog post, we will explore the basics of building a desktop GUI app with Ruby for creating standalone applications.","og_url":"https:\/\/www.railscarma.com\/fr\/blog\/creer-une-application-graphique-de-bureau-avec-ruby\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2023-03-09T09:00:52+00:00","article_modified_time":"2023-04-03T12:44:21+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"\u00c9crit par":"admin","Dur\u00e9e de lecture estim\u00e9e":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/"},"author":{"name":"admin","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21"},"headline":"Building a Desktop GUI App with Ruby","datePublished":"2023-03-09T09:00:52+00:00","dateModified":"2023-04-03T12:44:21+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/"},"wordCount":530,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg","articleSection":["Blogs"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/","url":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/","name":"Cr\u00e9er une application GUI de bureau avec Ruby - RailsCarma","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg","datePublished":"2023-03-09T09:00:52+00:00","dateModified":"2023-04-03T12:44:21+00:00","description":"Dans cet article de blog, nous explorerons les bases de la cr\u00e9ation d&#039;une application GUI de bureau avec Ruby pour cr\u00e9er des applications autonomes.","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/03\/Building-a-Desktop-GUI-App-with-Ruby.jpg","width":800,"height":300,"caption":"Building a Desktop GUI App with Ruby"},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/blog\/building-a-desktop-gui-app-with-ruby\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"Building a Desktop GUI App with Ruby"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - Soci\u00e9t\u00e9 de d\u00e9veloppement Ruby on Rails sp\u00e9cialis\u00e9e dans le d\u00e9veloppement offshore","description":"RailsCarma est une soci\u00e9t\u00e9 de d\u00e9veloppement Ruby on Rails \u00e0 Bangalore. Nous sommes sp\u00e9cialis\u00e9s dans le d\u00e9veloppement offshore Ruby on Rails, bas\u00e9s aux \u00c9tats-Unis et en Inde. Embauchez des d\u00e9veloppeurs Ruby on Rails exp\u00e9riment\u00e9s pour une exp\u00e9rience Web ultime.","publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.railscarma.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"RailsCarma","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","width":200,"height":46,"caption":"RailsCarma"},"image":{"@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/RailsCarma\/","https:\/\/x.com\/railscarma","https:\/\/www.linkedin.com\/company\/railscarma\/","https:\/\/myspace.com\/railscarma","https:\/\/in.pinterest.com\/railscarma\/","https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg"]},{"@type":"Person","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21","name":"administrateur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts\/37069","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/comments?post=37069"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts\/37069\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/media\/37080"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/media?parent=37069"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/categories?post=37069"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/tags?post=37069"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}