Sachverhalt: A. Der italienische Staatsangehörige A._ (geb. 1966) reiste am 28. Juni 2014 in die Schweiz ein und erhielt zunächst eine Kurzaufenthaltsbewilligung EU/EFTA. Am 12. November 2014 erteilte ihm das Migrationsamt des Kantons Zürich eine Aufenthaltsbewilligung EU/EFTA zwecks Ausübung einer unselbständigen Erwerbstätigkeit. Im Dezember 2014 erlitt A._ einen 2. Herzinfarkt. Daraufhin wurde ihm am 24. Dezember 2014 seine Arbeitsstelle gekündigt. Beim Arbeitsamt hat er sich nie gemeldet. Ab Januar 2015 musste er (fortdauernd) mit Sozialhilfegeldern von bislang Fr. 109'000.-- unterstützt werden. Am 9. Juni 2016 stellte er ein IV-Gesuch. Am 30. August 2016 widerrief das Migrationsamt die Aufenthaltsbewilligung EU/EFTA von A._ wegen Verlusts der Arbeitnehmereigenschaft und Sozialhilfeabhängigkeit unter Ansetzung einer Ausreisefrist bis zum 31. Oktober 2016. Am 2. Juli 2019 lehnte die IV-Stelle der Sozialversicherungsanstalt Zürich (SVA) das IV-Gesuch ab. Seit Dezember 2015 ist A._ in bisheriger Tätigkeit vollständig arbeitsunfähig, aber in leichter Tätigkeit vollständig arbeitsfähig. Ein Rekurs von A._ gegen den Widerruf der Aufenthaltsbewilligung EU/EFTA bei der Sicherheitsdirektion des Kantons Zürich blieb erfolglos, und mit Urteil vom 23. Oktober 2019 wies das Verwaltungsgericht des Kantons Zürich die Beschwerde gegen den Direktionsentscheid vom 21. Juli 2019 ebenfalls ab, unter gleichzeitiger Abweisung des Gesuchs um unentgeltliche Rechtspflege. B. Mit Beschwerde in öffentlich-rechtlichen Angelegenheiten vom 4. Dezember 2019 gelangte A._ an das Bundesgericht und beantragt in der Hauptsache, das letztgenannte Urteil sei aufzuheben und es sei ihm - dem Beschwerdeführer - eine Niederlassungsbewilligung zu erteilen, eventuell ihm die Aufenthaltsbewilligung EU/ EFTA zu belassen bzw. dieselbe nach Ablauf der Gültigkeitsfrist zu verlängern. Mit Verfügung vom 10. Dezember 2019 wurde der Beschwerde - antragsgemäss - aufschiebende Wirkung zuerkannt. Das Migrationsamt des Kantons Zürich hat sich nicht vernehmen lassen. Die Sicherheitsdirektion des Kantons Zürich verzichtete auf Vernehmlassung. Das Verwaltungsgericht des Kantons Zürich beantragt die Abweisung der Beschwerde, soweit darauf einzutreten sei.