{"id":830,"date":"2025-03-22T04:24:02","date_gmt":"2025-03-22T05:24:02","guid":{"rendered":"https:\/\/datanalyser.ir\/?p=830"},"modified":"2025-04-19T07:38:40","modified_gmt":"2025-04-19T07:38:40","slug":"%da%a9%d8%aa%d8%a7%d8%a8%d8%ae%d8%a7%d9%86%d9%87%d9%87%d8%a7%db%8c-%d8%b1%d8%a7%d8%a8%d8%b7-%da%a9%d8%a7%d8%b1%d8%a8%d8%b1%db%8c-%da%86%d9%86%d8%af%d8%b3%da%a9%d9%88%db%8c%db%8c-cross-platfo","status":"publish","type":"post","link":"https:\/\/datanalyser.ir\/?p=830","title":{"rendered":"\u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc (Cross-Platform) \u062f\u0631 \u067e\u0627\u06cc\u062a\u0648\u0646"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\u0645\u0642\u062f\u0645\u0647<\/h2>\n\n\n\n<p>\u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u060c \u0627\u06cc\u062c\u0627\u062f \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u06af\u0631\u0627\u0641\u06cc\u06a9\u06cc (<code>GUI<\/code>) \u06a9\u0647 \u062f\u0631 \u0686\u0646\u062f\u06cc\u0646 \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0627\u0633\u0627\u0633\u06cc \u0627\u062c\u0631\u0627 \u0634\u0648\u0646\u062f\u060c \u06cc\u06a9 \u0686\u0627\u0644\u0634 \u0645\u0647\u0645 \u0645\u062d\u0633\u0648\u0628 \u0645\u06cc\u200c\u0634\u0648\u062f. \u067e\u0627\u06cc\u062a\u0648\u0646 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f\u060c \u062f\u0627\u0631\u0627\u06cc \u0686\u0646\u062f\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc \u0627\u0633\u062a. \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627 \u0628\u0647 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f \u06a9\u0647 \u0628\u0627 \u06cc\u06a9 \u06a9\u062f \u06cc\u06a9\u0633\u0627\u0646\u060c \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u0647\u0627\u06cc\u06cc \u0628\u0631\u0627\u06cc \u0648\u06cc\u0646\u062f\u0648\u0632\u060c \u0644\u06cc\u0646\u0648\u06a9\u0633 \u0648 <code>macOS<\/code> \u062a\u0648\u0644\u06cc\u062f \u06a9\u0646\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647\u060c \u0645\u0647\u0645\u200c\u062a\u0631\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc <code>GUI<\/code> \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc \u067e\u0627\u06cc\u062a\u0648\u0646 \u0631\u0627 \u0628\u0631\u0631\u0633\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">\u06f1. <strong><code>Tkinter<\/code><\/strong><\/h2>\n\n\n\n<p><strong><code>Tkinter<\/code><\/strong> \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f <code>GUI<\/code> \u062f\u0631 \u067e\u0627\u06cc\u062a\u0648\u0646 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0646\u0635\u0628 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u067e\u0627\u06cc\u062a\u0648\u0646 \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u06cc\u06a9 \u0631\u0627\u0628\u0637 \u0628\u0631\u0627\u06cc <strong><code>Tk<\/code><\/strong> \u0627\u0633\u062a \u0648 \u0628\u0647 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u0628\u0647 \u0633\u0631\u0639\u062a \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u0633\u0627\u062f\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0646\u0635\u0628 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u067e\u0627\u06cc\u062a\u0648\u0646<\/li>\n\n\n\n<li>\u0633\u0628\u06a9\u200c\u0648\u0632\u0646 \u0648 \u0633\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc<\/li>\n\n\n\n<li>\u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u06a9\u0648\u0686\u06a9 \u0648 \u0622\u0632\u0645\u0627\u06cc\u0634\u06cc<\/li>\n\n\n\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u062d\u062f\u0648\u062f \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc\u200c\u0647\u0627\u06cc \u0645\u062f\u0631\u0646<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u062f:<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\">import tkinter as tk\n\nroot = tk.Tk()\nroot.title(\"Hello Tkinter\")\n\nlabel = tk.Label(root, text=\"\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627!\")\nlabel.pack()\n\nroot.mainloop()<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u06f2. <strong><code>PyQt<\/code> \u0648 <code>PySide<\/code><\/strong><\/h2>\n\n\n\n<p><strong><code>PyQt<\/code><\/strong> \u0648 <strong><code>PySide<\/code><\/strong> \u062f\u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 <strong><code>Qt<\/code><\/strong> \u0647\u0633\u062a\u0646\u062f \u06a9\u0647 \u0627\u0645\u06a9\u0627\u0646\u0627\u062a \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u200c\u0627\u06cc \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 <code>GUI<\/code> \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f. <strong><code>PyQt<\/code><\/strong> \u062a\u0648\u0633\u0637 <strong><code>Riverbank<\/code> <code>Computing<\/code><\/strong> \u062a\u0648\u0633\u0639\u0647 \u062f\u0627\u062f\u0647 \u0634\u062f\u0647 \u0648 \u062a\u062d\u062a \u0645\u062c\u0648\u0632 <code>GPL<\/code> \u06cc\u0627 \u062a\u062c\u0627\u0631\u06cc \u0639\u0631\u0636\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 <strong><code>PySide<\/code><\/strong> \u0646\u0633\u062e\u0647\u200c\u0627\u06cc \u0627\u0632 <code>Qt<\/code> \u0628\u0631\u0627\u06cc \u067e\u0627\u06cc\u062a\u0648\u0646 \u0627\u0633\u062a \u06a9\u0647 \u062a\u0648\u0633\u0637 <strong><code>Qt<\/code> <code>Company<\/code><\/strong> \u062a\u0648\u0633\u0639\u0647 \u06cc\u0627\u0641\u062a\u0647 \u0627\u0633\u062a.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0645\u062f\u0631\u0646 \u0648 \u063a\u0646\u06cc<\/li>\n\n\n\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc <strong><code>QML<\/code><\/strong> \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647<\/li>\n\n\n\n<li>\u0648\u06cc\u062c\u062a\u200c\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631<\/li>\n\n\n\n<li>\u0646\u06cc\u0627\u0632 \u0628\u0647 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc <code>Qt<\/code><\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u062f (<code>PyQt6<\/code>):<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\">from PyQt6.QtWidgets import QApplication, QLabel, QWidget\n\napp = QApplication([])\nwindow = QWidget()\nwindow.setWindowTitle(\"PyQt Example\")\n\nlabel = QLabel(\"\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627!\", parent=window)\nwindow.show()\n\napp.exec()<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u06f3. <strong><code>Kivy<\/code><\/strong><\/h2>\n\n\n\n<p><strong><code>Kivy<\/code><\/strong> \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0645\u062e\u0635\u0648\u0635 \u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u0628\u0627 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 \u0635\u0641\u062d\u0647 \u0644\u0645\u0633\u06cc \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a. \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc \u0645\u0648\u0628\u0627\u06cc\u0644 \u0648 \u062f\u0633\u06a9\u062a\u0627\u067e \u0628\u0633\u06cc\u0627\u0631 \u0645\u0646\u0627\u0633\u0628 \u0627\u0633\u062a.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 \u0686\u0646\u062f\u06cc\u0646 \u067e\u0644\u062a\u0641\u0631\u0645 (\u0648\u06cc\u0646\u062f\u0648\u0632\u060c \u0644\u06cc\u0646\u0648\u06a9\u0633\u060c <code>macOS\u060c<\/code> \u0627\u0646\u062f\u0631\u0648\u06cc\u062f\u060c <code>iOS<\/code>)<\/li>\n\n\n\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 <strong><code>OpenGL<\/code><\/strong> \u0628\u0631\u0627\u06cc \u06af\u0631\u0627\u0641\u06cc\u06a9 \u067e\u06cc\u0634\u0631\u0641\u062a\u0647<\/li>\n\n\n\n<li>\u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc \u0645\u0648\u0628\u0627\u06cc\u0644 \u0648 \u0644\u0645\u0633\u06cc<\/li>\n\n\n\n<li>\u0637\u0631\u0627\u062d\u06cc \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0632\u0628\u0627\u0646 <strong><code>KV<\/code><\/strong><\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u062f:<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\">from kivy.app import App\nfrom kivy.uix.label import Label\n\nclass MyApp(App):\n    def build(self):\n        return Label(text=\"\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627!\")\n\nMyApp().run()<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u06f4. <strong><code>wxPython<\/code><\/strong><\/h2>\n\n\n\n<p><strong><code>wxPython<\/code><\/strong> \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 <strong><code>wxWidgets<\/code><\/strong> \u0627\u0633\u062a \u06a9\u0647 \u0628\u0647 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0648\u0645\u06cc \u0648 \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 \u0648\u06cc\u062c\u062a\u200c\u0647\u0627\u06cc \u0628\u0648\u0645\u06cc \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644<\/li>\n\n\n\n<li>\u0637\u0631\u0627\u062d\u06cc \u06a9\u0644\u0627\u0633\u06cc\u06a9 \u0648 \u0642\u0627\u0628\u0644 \u0642\u0628\u0648\u0644<\/li>\n\n\n\n<li>\u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0633\u0627\u0632\u0645\u0627\u0646\u06cc \u0648 \u062d\u0631\u0641\u0647\u200c\u0627\u06cc<\/li>\n\n\n\n<li>\u0646\u06cc\u0627\u0632\u0645\u0646\u062f \u0646\u0635\u0628 \u062c\u062f\u0627\u06af\u0627\u0646\u0647<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u062f:<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\">import wx\n\napp = wx.App()\nframe = wx.Frame(None, title=\"wxPython Example\")\npanel = wx.Panel(frame)\n\ntext = wx.StaticText(panel, label=\"\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627!\", pos=(10,10))\nframe.Show()\n\napp.MainLoop()<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u06f5. <strong><code>PyGTK<\/code><\/strong><\/h2>\n\n\n\n<p><strong><code>PyGTK<\/code><\/strong> \u06cc\u06a9 \u0631\u0627\u0628\u0637 \u0628\u0631\u0627\u06cc <strong><code>GTK+<\/code><\/strong> \u0627\u0633\u062a \u06a9\u0647 \u0628\u06cc\u0634\u062a\u0631 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0644\u06cc\u0646\u0648\u06a9\u0633\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u0627\u0645\u0627 \u062f\u0631 \u0633\u0627\u06cc\u0631 \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644\u200c\u0647\u0627 \u0646\u06cc\u0632 \u0642\u0627\u0628\u0644 \u0627\u062c\u0631\u0627\u0633\u062a.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc \u06af\u0646\u0648\u0645 (<code>GNOME<\/code>)<\/li>\n\n\n\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc \u0645\u062f\u0631\u0646<\/li>\n\n\n\n<li>\u0646\u06cc\u0627\u0632\u0645\u0646\u062f \u0646\u0635\u0628 <strong><code>GTK+<\/code><\/strong><\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u062f:<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\">import gi\ngi.require_version(\"Gtk\", \"3.0\")\nfrom gi.repository import Gtk\n\nclass MyWindow(Gtk.Window):\n    def __init__(self):\n        super().__init__(title=\"PyGTK Example\")\n        self.add(Gtk.Label(label=\"\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627!\"))\n\nwin = MyWindow()\nwin.connect(\"destroy\", Gtk.main_quit)\nwin.show_all()\nGtk.main()<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0646\u062a\u06cc\u062c\u0647\u200c\u06af\u06cc\u0631\u06cc<\/h2>\n\n\n\n<p>\u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0645\u0646\u0627\u0633\u0628 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 <code>GUI<\/code> \u062f\u0631 \u067e\u0627\u06cc\u062a\u0648\u0646 \u0628\u0633\u062a\u06af\u06cc \u0628\u0647 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u067e\u0631\u0648\u0698\u0647 \u062f\u0627\u0631\u062f:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0627\u06af\u0631 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 <strong>\u06cc\u06a9 \u06af\u0632\u06cc\u0646\u0647 \u0633\u0627\u062f\u0647 \u0648 \u0633\u0628\u06a9\u200c\u0648\u0632\u0646<\/strong> \u0647\u0633\u062a\u06cc\u062f\u060c <strong><code>Tkinter<\/code><\/strong> \u06af\u0632\u06cc\u0646\u0647 \u0645\u0646\u0627\u0633\u0628\u06cc \u0627\u0633\u062a.<\/li>\n\n\n\n<li>\u0627\u06af\u0631 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f <strong>\u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u0645\u062f\u0631\u0646 \u0648 \u067e\u06cc\u0686\u06cc\u062f\u0647<\/strong> \u0637\u0631\u0627\u062d\u06cc \u06a9\u0646\u06cc\u062f\u060c <strong><code>PyQt<\/code><\/strong> \u06cc\u0627 <strong><code>PySide<\/code><\/strong> \u067e\u06cc\u0634\u0646\u0647\u0627\u062f \u0645\u06cc\u200c\u0634\u0648\u062f.<\/li>\n\n\n\n<li>\u0628\u0631\u0627\u06cc <strong>\u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0644\u0645\u0633\u06cc \u0648 \u0645\u0648\u0628\u0627\u06cc\u0644\u200c\u0645\u062d\u0648\u0631<\/strong>\u060c <strong><code>Kivy<\/code><\/strong> \u0628\u0647\u062a\u0631\u06cc\u0646 \u06af\u0632\u06cc\u0646\u0647 \u0627\u0633\u062a.<\/li>\n\n\n\n<li>\u0627\u06af\u0631 \u0628\u0647 <strong>\u0638\u0627\u0647\u0631 \u0628\u0648\u0645\u06cc \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644<\/strong> \u0627\u0647\u0645\u06cc\u062a \u0645\u06cc\u200c\u062f\u0647\u06cc\u062f\u060c <strong><code>wxPython<\/code><\/strong> \u0627\u0646\u062a\u062e\u0627\u0628 \u062e\u0648\u0628\u06cc \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f.<\/li>\n\n\n\n<li>\u0628\u0631\u0627\u06cc <strong>\u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0647\u0627\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 <code>GNOME<\/code> \u0648 \u0644\u06cc\u0646\u0648\u06a9\u0633<\/strong>\u060c <strong><code>PyGTK<\/code><\/strong> \u06af\u0632\u06cc\u0646\u0647 \u0645\u0646\u0627\u0633\u0628\u06cc \u0627\u0633\u062a.<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0645\u0642\u062f\u0645\u0647 \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u060c \u0627\u06cc\u062c\u0627\u062f \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u06af\u0631\u0627\u0641\u06cc\u06a9\u06cc (GUI) \u06a9\u0647 \u062f\u0631 \u0686\u0646\u062f\u06cc\u0646 \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0627\u0633\u0627\u0633\u06cc \u0627\u062c\u0631\u0627 \u0634\u0648\u0646\u062f\u060c \u06cc\u06a9 \u0686\u0627\u0644\u0634 \u0645\u0647\u0645 \u0645\u062d\u0633\u0648\u0628 \u0645\u06cc\u200c\u0634\u0648\u062f. \u067e\u0627\u06cc\u062a\u0648\u0646 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f\u060c \u062f\u0627\u0631\u0627\u06cc \u0686\u0646\u062f\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc \u0627\u0633\u062a. \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627 \u0628\u0647 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u0646\u062f \u06a9\u0647 \u0628\u0627 \u06cc\u06a9 \u06a9\u062f \u06cc\u06a9\u0633\u0627\u0646\u060c \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u0647\u0627\u06cc\u06cc \u0628\u0631\u0627\u06cc &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/datanalyser.ir\/?p=830\" class=\"more-link\">\u0627\u062f\u0627\u0645\u0647 \u062e\u0648\u0627\u0646\u062f\u0646<span class=\"screen-reader-text\"> &#8220;\u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0686\u0646\u062f\u0633\u06a9\u0648\u06cc\u06cc (Cross-Platform) \u062f\u0631 \u067e\u0627\u06cc\u062a\u0648\u0646&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[43,44],"tags":[94,122],"class_list":["post-830","post","type-post","status-publish","format-standard","hentry","category-43","category-44","tag-94","tag-122"],"_links":{"self":[{"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/posts\/830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=830"}],"version-history":[{"count":3,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/posts\/830\/revisions"}],"predecessor-version":[{"id":833,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=\/wp\/v2\/posts\/830\/revisions\/833"}],"wp:attachment":[{"href":"https:\/\/datanalyser.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=830"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/datanalyser.ir\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}