code: def _update_color_hexa(self, event=None):
          
          color = self.hexa.get().upper()
          self.hexa.delete(0, 'end')
          self.hexa.insert(0, color)
          if re.match(r"^#[0-9A-F]{6}$", color):
              r, g, b = hexa_to_rgb(color)
              self.red.set(r)
              self.green.set(g)
              self.blue.set(b)
              h, s, v = rgb_to_hsv(r, g, b)
              self.hue.set(h)
              self.saturation.set(s)
              self.value.set(v)
              self.bar.set(h)
              self.square.set_hsv((h, s, v))
              if self.alpha_channel:
                  a = self.alpha.get()
                  self.hexa.insert('end', ("%2.2x" % a).upper())
                  self.alphabar.set_color((r, g, b, a))
          elif self.alpha_channel and re.match(r"^#[0-9A-F]{8}$", color):
              r, g, b, a = hexa_to_rgb(color)
              self.red.set(r)
              self.green.set(g)
              self.blue.set(b)
              self.alpha.set(a)
              self.alphabar.set_color((r, g, b, a))
              h, s, v = rgb_to_hsv(r, g, b)
              self.hue.set(h)
              self.saturation.set(s)
              self.value.set(v)
              self.bar.set(h)
              self.square.set_hsv((h, s, v))
          else:
              self._update_color_rgb()
          self._update_preview()
docs: Update display after a change in the HEX entry.