diff --git a/Lib/tkinter/colorchooser.py b/Lib/tkinter/colorchooser.py
index cab77dc..6027067 100644
--- a/Lib/tkinter/colorchooser.py
+++ b/Lib/tkinter/colorchooser.py
@@ -34,19 +34,22 @@
         try:
             # make sure initialcolor is a tk color string
             color = self.options["initialcolor"]
-            if type(color) == type(()):
+            if isinstance(color, tuple):
                 # assume an RGB triplet
                 self.options["initialcolor"] = "#%02x%02x%02x" % color
         except KeyError:
             pass
 
     def _fixresult(self, widget, result):
+        # result can be somethings: an empty tuple, an empty string or
+        # a Tcl_Obj, so this somewhat weird check handles that
+        if not result or not str(result):
+            return None, None # canceled
+
         # to simplify application code, the color chooser returns
         # an RGB tuple together with the Tk color string
-        if not result:
-            return None, None # canceled
         r, g, b = widget.winfo_rgb(result)
-        return (r/256, g/256, b/256), result
+        return (r/256, g/256, b/256), str(result)
 
 
 #
@@ -66,5 +69,4 @@
 # test stuff
 
 if __name__ == "__main__":
-
     print("color", askcolor())
diff --git a/Misc/NEWS b/Misc/NEWS
index a830fc4..f483a1c 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -64,6 +64,8 @@
 Library
 -------
 
+- Issue #3767: Convert Tk object to string in tkColorChooser.
+
 - Issue #3248: Allow placing ScrolledText in a PanedWindow.
 
 - Issue #4444: Allow assertRaises() to be used as a context handler, so that
