Pyside2 Qapplication

environ ['QT_API'] = 'pyqt' # import from QtPy instead of doing it directly # note that QtPy always uses PyQt5 API from. Using its simple drag and drop interface, a GUI interface can be quickly built without having to write the code. By default this attribute is set for all widgets except transient windows such as splash screens, tool windows, and popup menus. exec_() Also see /examples; Documentation. This is a very basic example showing how to display a matplotlib plot within a Qt application using PySide. This information is used to display who you are to others, and to send updates to code reviews you have either started or subscribed to. The Qt GUI module provides classes for windowing system integration, event handling, OpenGL and OpenGL ES integration, Vulkan integration, 2D graphics, imaging, fonts and typography. py 文件 使用 PySide2 开发 Maya 插件系列二:继承 uic 转换出来的 py 文件中的类 Ui_Form. By voting up you can indicate which examples are most useful and appropriate. This example installs Qt for Python, also known as PySide2. QApplication(). 6(仮想で両方で試した) Pycharm内臓のVenvでパッケージ管理 導入 PythonでQtを扱うにはPyQtとPysideの2つがある。. shiboken2: contains the shiboken2 module with helper functions for PySide2. โดยเฉพาะบรรทัดที่ dirname = os. After reading this tutorial, you will be able to program nontrivial PySide applications. 1 import sys 2 from PySide2. จัดการปลั๊กอิน PySide2. I would like to ask You how can I print my results in QTextEdit or QPlainTextEdit, I've tried a few combination from here and some others site and nothing works, I will glad if someone will help me to fix it. That's a bit of code in the sample from when we needed the QApplication to parent the window. The text of the button is set with: statusButton = QPushButton(translator. exec_ () # Your. 5 이상 버전 및 Qt5 버전을 지원합니다. I've done this successfully in PyQt5 where I had to build the wrapper with qml debugging enabled, and then instantiate the QApplication with the argu. Simply define your signal as a class variable, but connect/reference it as an instance variable. By voting up you can indicate which examples are most useful and appropriate. make and make install for PyQT5, sip work without errors but spyder still complain that PyQT not instaled also when I run python and t. I have searched a bit but i can't find a good solution to my problem. You don’t need to do anything specific apart from installing it in your Python path. OK, I Understand. QApplication(sys. You can access them using a variety of different programming languages ranging from compiled applications like C++ to scripted languages like Python. commitData() and QApplication. The default constructor has no parent. It also handles the application's initialization, finalization, and provides session management. setDesktopSettingsAware() function (passing false as argument) to prevent this, and the QApplication. QApplication class manages the GUI application's control flow and main settings. PySide2(PyQt5) 实现tab切换及方法详解(不定时更新) PySide2(PyQt5) 实现tab切换及方法详解(不定时更新) 由 匿名 (未验证) 提交于 2019-09-25 21:01:21. py, and (2) another conversion from PySide2 to Qt. QGuiApplication taken from open source projects. This example installs Qt for Python, also known as PySide2. ) # Creamos la aplicación, la ventana e iniciamos el bucle app = QW. 使用 PySide2 开发 Maya 插件系列 总览 使用 PySide2 开发 Maya 插件系列一:QT Designer 设计GUI, pyside-uic 把. They are extracted from open source Python projects. 怎样搭建Qt for Python开发环境,QtforPytho是Qt官方为ytho提供的Qt工具套件,利用此套件,广大编程技术人员以及爱好者能为他们的ytho程序构建高效漂亮的GUI界面。. QPlainTextEdit taken from open source projects. 01-29-2014, 04:29 PM. A QRadioButton class object presents a selectable button with a text label. It comes with a bunch of changes, where one change is of particular interest to me as a Python developer; PySide has been replaced with PySide2 (as a result of Autodesk replacing Qt4 with Qt5). Dialog windows or dialogs are common in modern GUI applications. Is this something that has been missed during migration or should we be using some other new method we are not aware of? Skimming through the project tree noticed in the xml wrapper that the non-const method has been marked as internal and the const method has been marked as "remove=all". I just installed Pyside2 -"5. 右クリックでコンテキストメニューを出すときに一緒にclickedシ…. Like, I know a little about QThreads and the QApplication event-loop, and have heard of asyncio, but am very suspicious of trying to mash-up two different models of multi-threading. Take into account that if you want. # Pass in sys. QtWidgets import * import sys class Widge…. Qt for Python(PySide2)の位置付け QtをPythonから利用するには、PyQtとPySideが有名です。 PySideはQtの開発元のThe Qt Companyがサポートしていますが、以前はあまり活発な開発が行われず、Qt5シリーズへの対処が遅れていました。. By voting up you can indicate which examples are most useful and appropriate. Update: I ended up using Python 3. Drei Jahre später gründeten sie das Unternehmen Quasar Technologies, welches später in Trolltech umbenannt wurde. setDesktopSettingsAware() function (passing false as argument) to prevent this, and the QApplication. PySide2でのGUI開発の環境を整えたので覚書に。 - OS:Ubuntu17. The PySide2. GitHub Gist: instantly share code, notes, and snippets. call()执行其他目录下. File->New File or Project… Applications->Qt Gui Application->Choose… We keep the class as MainWindow as given by default. 早速実行してみましょう $ python main. QtGui import * import sys app = QApplication(sys. 简评:PySide2 是 QT 官方出品,值得期待. draw app = QApplication ([]) window = MatplotlibWidget window. PySideはPythonでGUIを構築するためのクロスプラットフォームなライブラリである。 PySideはQtのPythonバインディングである。 PySideはPythonに付属しているTkinter(GUIライブラリ)の代わりとして用いられる。. exec_ () # Your. QPushButton("Hello World") button. Python source code: qt_embedding. QtWidgets import QApplication, QWidgetapp = QApplication(sys. PySide2) was announced recently and got me interested in trying to use it to load up a UI file. The Poor Man's Dialogue Tree お金を掛けないダイアログツリーの作り方 普通のやり方 Unityのアセットストア等で買うと高い サードパーティ製(本当に必要なものではない可能性がある) 退屈!. QtCore import QMetaObject, Qt from PySide2. - repro_PySide2_modal_QFileDialog_ignores_accept. Could someone test if executing the following code make your max crash. Let's build a simple application to show the simplicity of Qt for Python using QWidgets. Qt for Python is the project that provides the official set of Python bindings (PySide2) that will supercharge your Python applications. Your work-around is the long-winded approach. translate 后面的参数有所不一样。. Attention: a port of PySide to Qt 5. Qt for Python (i. 那么这里有一个疑问了QApplication和QWidget有什么区别,首先QApplication对象是不能显示出来的,而QWidget对象是可以显示出来的,而且QApplication只有一个,QWidget可以有多个,QApplication相当于一个全局指针。. QtGui import * import sys app = QApplication(sys. So what's the code to replace shiboken. from PySide2. Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. ui files? Even for those working with PyQt4, or even PyQt5? That they (1) perform a conversion to. PySide2内部中自带有PyDesigner,可以通过它来将部件功能实例化组合达到自己需要的界面。但是由于将很多不同的控件组合的过程中,逻辑容易混乱,不利于修改,比较好的一种方式就是生成多个. It is however, not an IDE such as Visual Studio. If your applications are based on Qt (PySide2), it is quite easy to integrate a VisOpt Slider widget into your applications. I ended up having to 'post' a custom event to the QApplication with a lower than 'low' priority, (or use pm. It has the following special features. Basically, this Qt feature allows your graphical widgets to communicate with other graphical widgets or your own python code. The QFileDialog class provides a dialog that allow users to select files or directories. 違うんじゃあああああああああああああああああぁぁぁぁあああばばばっばばばば # from PySide2. Here are the examples of the python api PySide2. This module provides a function to transparently load the stylesheets with the correct rc file. The PySide2. By voting up you can indicate which examples are most useful and appropriate. There are differences between PySide and PySide2 here that catch folks out, so make sure you check the correct version documentation. Comparison: PyQt vs PySide2 5. QApplication(). make and make install for PyQT5, sip work without errors but spyder still complain that PyQT not instaled also when I run python and t. This issue is with VS Code on Win10 and Python 3. The purpose of this tutorial is to introduce concepts about licenses and develop python programs using ergonomic design interfaces with PySide2 and PyQt versions. Do you think it would make sense to make this the only supported method of working with. Graphical applications (GUI) are event-driven, unlike console or terminal applications. A dark stylesheet for Python and Qt applications - 2. import sys from PySide2. 推荐:C++虚基类的作用及使用1 一. To me, signals and slots are one of the ways you can help yourself avoid the dreaded spaghetti code. Maya2017以及Nuke10的PySide都升级到PySide2了,之前PySide1的大量代码都无法在新软件上使用,这主要是由于PySide2不仅调整了模块位置,还增删了一系列模块,下面我分享一段兼容代码,把模块位置调整回来: 我们把这段代码复制到Maya2017中的Scirpt Editor. SLOT('display(int)')) window. 一、安装PySide2遇到的问题: 1、使用命令pip install PySide2终端安装,多次安装失败,原因:网络问题 2、python3. QDate',), ('PySide2. 7libclang 5. A dialog is defined as a conversation between two or more persons. Python3の開発環境構築 PySide2の入手が一番簡単なので今回はAnaconda or Minicondaで構築していきます。 自身は余計なパッケージとか. To make 3ds Max the parent of our QWidget, we create a new QWidget and pass it the main window handle returned by MaxPlus. In fact, I took a number of PyQt example applications that we use for Qt training and was able to quickly port them to Qt for Python. For a widget application using PySide2, you must always start by importing the appropriate class from the PySide2. QSlider class object presents the user with a groove over which a handle can be moved. QApplication(sys. The following are code examples for showing how to use PySide. QFileDialog, QListWidget, QMainWindow, QMessageBox, QTextEdit, QLabel, QVBoxLayout, QWidget, QPushButton, QGridLayout, QLineEdit). Once you've covered the basics, you'll build a fully-functional desktop calculator that can respond to user events with concrete actions. In this chapter we will look at how you can combine Python and QML. Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. โดยเฉพาะบรรทัดที่ dirname = os. KeyboardModifiers. You can read about how that works in their documentation. An example of a grid layout with widgets is shown below: Related course: PyQt5 grid layout example: The example below creates the grid:. Architecture 3. Let's build a simple application to show the simplicity of Qt for Python using QWidgets. php on line 143 Deprecated: Function create. Introduction. # A widget with no parent is called a window. setOverrideCursor(). In this chapter we will look at how you can combine Python and QML. Qt for Python (i. The first Qt for Python technology preview release is almost here, and for this reason we want to give a brief example on how it will open the doors to the Python world. # A widget with no parent is called a window. pyi files, but I don't know the steps to find out which one is related. py 文件 使用 PySide2 开发 Maya 插件系列二:继承 uic 转换出来的 py 文件中的类 Ui_Form. As PySide2 seems unfinished, I am not going to care all that much about it, esp. This property holds the global QApplication object for your app. PyQt + QML 快速开发GUI总结 Wed 06 November 2013 最近结束一个使用PyQt+QML开发的项目, 在此对一些经验做出总结分享出来. It has the following special features. QApplication. These classes have the main functions for building Qt for Python applications. For example, the QStandardItemModel provides limited capabilities that are somewhat greater than those we saw in last installment's discussion of the QListWidget; in addition to text and icons, it provides drag-and-drop capabilities, checkable items, and other features. QWidget class is the base class of all user interface objects. Do you think it would make sense to make this the only supported method of working with. In this case, you are importing the QtCore, QtWidgets, and QtGui submodules. Este es el manual de FreeCAD. draw app = QApplication ([]) window = MatplotlibWidget window. Both PyQt5 and PySide2 have an according structure in QtWidgets. Simply define your signal as a class variable, but connect/reference it as an instance variable. exec_ () # Your. 3 ve 4 nolu satırlar birbiri yerine kullanılabilir. QApplication(). >>> from PySide2. Dialog windows or dialogs are common in modern GUI applications. 1, so that’s the version of Qt I’m using in this guide as well as 64-bit Python. connect(slider, QtCore. After the imports, you create a QApplication instance. I already installed PyQt5, not sure if the installation went through as expected. argv) # The QWidget widget is the base class of all user interface objects in PyQt4. py: import sysfrom PySide2. QApplication. Returns the current state of the modifier keys on the keyboard. import sys from PySide2. py, and (2) another conversion from PySide2 to Qt. QApplication(). You can vote up the examples you like or vote down the ones you don't like. In general, we recommend that you create a PySide. Python3の開発環境構築 PySide2の入手が一番簡単なので今回はAnaconda or Minicondaで構築していきます。 自身は余計なパッケージとか. The behaviour of them both is identical for defining and slots and signals. I've never had a problem like this before so I'd really appreciate it if somebody could shed some light on this seemingly anomalous behavior. You can access them using a variety of different programming languages ranging from compiled applications like C++ to scripted languages like Python. argv) 6 7 # define a new slot that receives a string and has 8 # 'saySomeWords' as its name 9 @Slot (str) 10 def say_some_words (words): 11 print (words) 12 13 class Communicate (QObject): 14. For this use, Mayavi is embedded in a QWidget. Today, Maya 2017 was released. I know how to change the cursor for the whole app but I do not know how to change it for the text widget only. QtWidgets import * from PySide. QFileDialog, QListWidget, QMainWindow, QMessageBox, QTextEdit, QLabel, QVBoxLayout, QWidget, QPushButton, QGridLayout, QLineEdit). Autodesk Maya中心にPythonをしていきます。 自分の復習を兼ねて自作のscriptなどを中心に公開していく予定です |【PySide2】PySideからPySide2に移行してみました|ちょびちょびMayaPython. QApplication. This class is derived from QAbstractButton class. Type: Bug Status: Reported. This is a very basic example showing how to display a matplotlib plot within a Qt application using PySide. จัดการปลั๊กอิน PySide2. Use the QApplication. The user can select one of many options presented on the form. LibreOffice5(20)anaconda3のtkinterモジュールを使うでPythonでGUIプログラミングするためのツールについて調べている途中でPySideを知ったのでlinuxBean14. Here are the examples of the python api PySide2. The most natural way to combine the two worlds is to do as with C++ and QML, i. index(0, 0) model. QtWidgets module. py 25 Jul 2016 #Python #Maya #Nuke #Qt. โดยเฉพาะบรรทัดที่ dirname = os. I'm building a simple GUI for a AI project and using PySide2 and QML. The following are code examples for showing how to use PySide2. Close events are sent to widgets that the user wants to close, usually by choosing “Close” from the window menu, or by clicking the X title bar button. You can vote up the examples you like or vote down the ones you don't like. When a user takes an action — clicking on a button, selecting a value in a combo box, typing in a text box — the widget in question emits a signal. QtCore import * from PySide2. PySide2安装1sudo pip install pyside2 -i https://pypi. py" etc and it did not help. 以下のようなウィンドウをPyQtを用いて作成したいと思っています。 フルスクリオーンで表示 ; 一定時間(10秒)経過後にウィンドウを自動的に閉じる. QtWidgets import QApplication, QLabel, QLineEdit from PySide2. The following contact information was automatically obtained when you signed in to the site. They are extracted from open source Python projects. Deprecated: a port of PySide to Qt 5. The default constructor has no parent. Project files and videos marked with a are Total Access exclusives. If no other packages pulling 'python3-shiboken2' are installed on the computer, a PySide2-based program can't work/start properly. setOverrideCursor(). from PySide2. A dark stylesheet for Python and Qt applications. Use the QApplication. show(), and to open it as modal, call. # A widget with no parent is called a window. © 2019 The Qt Company Ltd. Event handling in PySide2 uses the concept of Signals and Slots underneath the covers. 1 import sys 2 from PySide2. Qt has a couple of widgets that allow single-column list selector controls — for brevity and convenience, we'll call them list boxes. mainWindo…. In this short guide I'll run through why exactly this is, whether you need to care (spoiler:. * This is a Patreon series. QtGui import * from PySide2. Skip to content. By voting up you can indicate which examples are most useful and appropriate. QSlider(QtCore. The first Qt for Python technology preview release is almost here, and for this reason we want to give a brief example on how it will open the doors to the Python world. Qt is a cross-platform application and widget toolkit that uses standard C++ but makes extensive use of a special code generator (called the Meta Object Compiler, or moc) together with several macros to enrich the language. The Qt GUI module provides the basic enablers for graphical applications written with Qt. This function is a convenience slot for aboutQt(). PySide2でのGUI開発の環境を整えたので覚書に。 - OS:Ubuntu17. Project files and videos marked with a are Total Access exclusives. Home Subscribe PySide tutorial. implement the logic in Python and the presentation in QML. We resize it to 100 pixels in width and 32 in height. I've read a lot of topics on this here at StackOverflow and possibly this is a duplicate of another topic, bu. Radio buttons are autoexclusive by default. QWidget class is the base class of all user interface objects. I'm building a simple GUI for a AI project and using PySide2 and QML. Let's build a simple application to show the simplicity of Qt for Python using QWidgets. The following are code examples for showing how to use PySide2. make and make install for PyQT5, sip work without errors but spyder still complain that PyQT not instaled also when I run python and t. Once upon a time there was a programming language called C. 7 to python3. The following are code examples for showing how to use PyQt5. Could well be that PySide2 still hard codes uncompiled function type checks like PySide did. from PySide2. You don’t need to do anything specific apart from installing it in your Python path. import sys from PySide2. argv to allow command line arguments for your app. from PySide2. ATTENTION: This project is deprecated, please refer to PySide2 - pyside/pyside2. 此时当son类对象调用human类中的公有变. Python3の開発環境構築 PySide2の入手が一番簡単なので今回はAnaconda or Minicondaで構築していきます。 自身は余計なパッケージとか. By voting up you can indicate which examples are most useful and appropriate. Do you think it would make sense to make this the only supported method of working with. Matplot plot in PyQt5 window. QtSingleApplication QtSolutionsはPySide2には組み込まれていない. static PySide2. QApplication(sys. qApp pointer - you are right, this is no longer needed. Is this something that has been missed during migration or should we be using some other new method we are not aware of? Skimming through the project tree noticed in the xml wrapper that the non-const method has been marked as internal and the const method has been marked as "remove=all". Here are the examples of the python api PySide2. They are extracted from open source Python projects. Qt's meta-object system provides a mechanism to automatically connect signals and slots between PySide. argv) AttributeError: 'module' object has no attribute 'QApplication' Basically, I designed the GUI with the Qt5 and then used pyuic5. translate 后面的参数有所不一样。. The message includes the version number of Qt being used by the application. The first step is we need to add our modules. py project and how to get set up with it for PySide/PyQt4 and PySide2/PyQt5 development. Beginner Qt For Python(PySide2) QML 프로젝트 예제 makersweb 2019. By voting up you can indicate which examples are most useful and appropriate. As PySide2 seems unfinished, I am not going to care all that much about it, esp. 5安装PySide2成功后import PySide2,报错,如下图: 试过卸掉PySide2重新命令安装,仍然报错。. After the creation of the application object,. 先看效果: PySide2(QT5) 的 QT Designer (我在 QT4 的 designer 中不可以直接看效果,可能需要设置什么)能直接在编辑器中看效果,Label设置如下:. A QRadioButton class object presents a selectable button with a text label. QtWidgets import (QApplication, QWidget, QPushButton, QComboBox, QVBoxLayout). py #PySide #PyQt. QWidget): def __init__(self, parent=None): super. As Qt can receive arguments from command line, you may pass any argument to the QApplication object. PySide2 QThread Issue. If you don't know, PyQt and PySide / PySide2 can use the Qt Creator application to create user interfaces using a drag-and-drop interface. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. If you start building Python application with Qt5 you'll soon discover that there are in fact two packages which you can use to do this — PyQt5 and PySide2. I am loading a QMainWindow from an. environ ['QT_API'] = 'pyqt' # import from QtPy instead of doing it directly # note that QtPy always uses PyQt5 API from. QtWidgets import * from PySide. Project description. , timer and network events) and other sources are processed and dispatched. (2)pySide2 Widget和Layout QWidget和Layout的关系 The PySide2. 右クリックでコンテキストメニューを出すときに一緒にclickedシ…. PythonバインディングはQt4系のPyQt,PySide、Qt5系のPyQt5,PySide2があります。 ちなみに弊社はPySideまたはPySide2で統一していますが、githubのプロジェクトを見渡すとビルド環境の関係からか、PySide2ではなくPyQt5を採用しているケースも見受けられます。. Compiling PySide2 from source 17 Aug 2016 #PySide #Python. argv to allow command line arguments for your app. argv) 6 7 # define a new slot that receives a string and has 8 # 'saySomeWords' as its name 9 @Slot (str) 10 def say_some_words (words): 11 print (words) 12 13 class Communicate (QObject): 14. I have searched a bit but i can't find a good solution to my problem. Installs an event filter filterObj for all native events received by the application in the main thread. CursorShape enum. Note that all effects are disabled on screens running at less than 16-bit color depth. PySide2 のコードに移行しておけば下位互換できるってことかな? _pyside() を見れば PySide2 でどこを変更すればOKか分かります! 詳しくはこちらを参照して下さい Minimal Python 2 & 3 shim around all Qt bindings - PySide, PySide2, PyQt4 and PyQt5. 摘要 通常我们的播放引擎需要和GUI进行集成,在使用GStreamer时,GStreamre会负责媒体的播放及控制,GUI会负责处理用户的交互操作以及创建显示的窗口。. translate 后面的参数有所不一样。. QTimeZone'), ('PySide2. Qt is a cross-platform GUI toolkit that scales from mobile interfaces to full blown desktop applications. Installation 1. The first Qt for Python technology preview release is almost here, and for this reason we want to give a brief example on how it will open the doors to the Python world. QtCore import QThread from PySide2. 在之前的文章中,我们介绍了PyQt5和PySide2中主窗口控件MainWindow的使用、窗口控件的4中基础布局管理。从本篇开始,我们来了解一下PyQt5和PySide2中基础控件的使用,其中包括: 按钮控件; 文本输入控件; 单选控件; 文本标签控件; 多选控件; 列表控件; 等图形界面开发中常用的控件,今天我们来. Could someone test if executing the following code make your max crash. Issues e Future of the Qt for Python. 1 and it now works with PySide2 5. 2 fails) and it seems to be fully functional and very nice but I feel much pain porting macros from python2. Hence, only one of the radio buttons in the parent window can be selected at a time. Note that QApplication's constructor receives sys. In this book described in details creation of the Graphical User Interface (GUI) applications with PyQt5 and PySide2 bindings to the Python programming language. 使用QT Designer设计完的文件将保存为后缀为ui的文件,你可以通过在安装了Pyside2虚拟环境“pyside2”中通过命令pyside2-uic -o 1. In case of problems try to change the rcParam entry “backend. 更多事件点击这里查看PySide2. Examples 4. To display the widget as modeless, call. cn/simple Get Started12345678910111213141516171819202122232425262728293031323334353637383940. anything that inherits from QWidget — can be shown as a window. Here are the examples of the python api PySide2. activeWindow() returns the currently active window (the one in focus). QApplication class manages the GUI application’s control flow and main settings. This is more adding it as an official Qt project and also updating it to Qt 5. attempt N°1. Issues e Future of the Qt for Python. These classes have the main functions for building Qt for Python applications. We set the window size using the setGeometry(left,top,width,height) method. The fact-checkers, whose work is more and more important for those who prefer facts over lies, police the line between fact and falsehood on a day-to-day basis, and do a great job. Today, my small contribution is to pass along a very good overview that reflects on one of Trump’s favorite overarching falsehoods. Namely: Trump describes an America in which everything was going down the tubes under  Obama, which is why we needed Trump to make America great again. And he claims that this project has come to fruition, with America setting records for prosperity under his leadership and guidance. “Obama bad; Trump good” is pretty much his analysis in all areas and measurement of U.S. activity, especially economically. Even if this were true, it would reflect poorly on Trump’s character, but it has the added problem of being false, a big lie made up of many small ones. Personally, I don’t assume that all economic measurements directly reflect the leadership of whoever occupies the Oval Office, nor am I smart enough to figure out what causes what in the economy. But the idea that presidents get the credit or the blame for the economy during their tenure is a political fact of life. Trump, in his adorable, immodest mendacity, not only claims credit for everything good that happens in the economy, but tells people, literally and specifically, that they have to vote for him even if they hate him, because without his guidance, their 401(k) accounts “will go down the tubes.” That would be offensive even if it were true, but it is utterly false. The stock market has been on a 10-year run of steady gains that began in 2009, the year Barack Obama was inaugurated. But why would anyone care about that? It’s only an unarguable, stubborn fact. Still, speaking of facts, there are so many measurements and indicators of how the economy is doing, that those not committed to an honest investigation can find evidence for whatever they want to believe. Trump and his most committed followers want to believe that everything was terrible under Barack Obama and great under Trump. That’s baloney. Anyone who believes that believes something false. And a series of charts and graphs published Monday in the Washington Post and explained by Economics Correspondent Heather Long provides the data that tells the tale. The details are complicated. Click through to the link above and you’ll learn much. But the overview is pretty simply this: The U.S. economy had a major meltdown in the last year of the George W. Bush presidency. Again, I’m not smart enough to know how much of this was Bush’s “fault.” But he had been in office for six years when the trouble started. So, if it’s ever reasonable to hold a president accountable for the performance of the economy, the timeline is bad for Bush. GDP growth went negative. Job growth fell sharply and then went negative. Median household income shrank. The Dow Jones Industrial Average dropped by more than 5,000 points! U.S. manufacturing output plunged, as did average home values, as did average hourly wages, as did measures of consumer confidence and most other indicators of economic health. (Backup for that is contained in the Post piece I linked to above.) Barack Obama inherited that mess of falling numbers, which continued during his first year in office, 2009, as he put in place policies designed to turn it around. By 2010, Obama’s second year, pretty much all of the negative numbers had turned positive. By the time Obama was up for reelection in 2012, all of them were headed in the right direction, which is certainly among the reasons voters gave him a second term by a solid (not landslide) margin. Basically, all of those good numbers continued throughout the second Obama term. The U.S. GDP, probably the single best measure of how the economy is doing, grew by 2.9 percent in 2015, which was Obama’s seventh year in office and was the best GDP growth number since before the crash of the late Bush years. GDP growth slowed to 1.6 percent in 2016, which may have been among the indicators that supported Trump’s campaign-year argument that everything was going to hell and only he could fix it. During the first year of Trump, GDP growth grew to 2.4 percent, which is decent but not great and anyway, a reasonable person would acknowledge that — to the degree that economic performance is to the credit or blame of the president — the performance in the first year of a new president is a mixture of the old and new policies. In Trump’s second year, 2018, the GDP grew 2.9 percent, equaling Obama’s best year, and so far in 2019, the growth rate has fallen to 2.1 percent, a mediocre number and a decline for which Trump presumably accepts no responsibility and blames either Nancy Pelosi, Ilhan Omar or, if he can swing it, Barack Obama. I suppose it’s natural for a president to want to take credit for everything good that happens on his (or someday her) watch, but not the blame for anything bad. Trump is more blatant about this than most. If we judge by his bad but remarkably steady approval ratings (today, according to the average maintained by 538.com, it’s 41.9 approval/ 53.7 disapproval) the pretty-good economy is not winning him new supporters, nor is his constant exaggeration of his accomplishments costing him many old ones). I already offered it above, but the full Washington Post workup of these numbers, and commentary/explanation by economics correspondent Heather Long, are here. On a related matter, if you care about what used to be called fiscal conservatism, which is the belief that federal debt and deficit matter, here’s a New York Times analysis, based on Congressional Budget Office data, suggesting that the annual budget deficit (that’s the amount the government borrows every year reflecting that amount by which federal spending exceeds revenues) which fell steadily during the Obama years, from a peak of $1.4 trillion at the beginning of the Obama administration, to $585 billion in 2016 (Obama’s last year in office), will be back up to $960 billion this fiscal year, and back over $1 trillion in 2020. (Here’s the New York Times piece detailing those numbers.) Trump is currently floating various tax cuts for the rich and the poor that will presumably worsen those projections, if passed. As the Times piece reported: