diff --git a/pytools/__init__.py b/pytools/__init__.py
index 74ebba117e6e9960e11589b74a63445547adfec5..557278b7687e6d379ffe69955294b1a58db718a4 100644
--- a/pytools/__init__.py
+++ b/pytools/__init__.py
@@ -1648,6 +1648,12 @@ class ProgressBar:
         self.set_progress(self.total)
         sys.stderr.write("\n")
 
+    def __enter__(self):
+        self.draw()
+
+    def __exit__(self, exc_type, exc_val, exc_tb):
+        self.finished()
+
 # }}}