On Fri, 30 Jun 2023 10:38:01 GMT, Alexey Ivanov <aiva...@openjdk.org> wrote:

>> I tried with the `Integer` object and it works fine. Please suggest if 
>> anything else I can test.
>
>> I tried with the `Integer` object and it works fine. Please suggest if 
>> anything else I can test.
> 
> Obviously, it does.
> 
> What about a custom object which doesn't override `toString`? Although this 
> shouldn't be a problem either.
> 
> What if `JComboBox` uses a non-standard renderer which takes a property from 
> an object? Let's assume, `JComboBox` is populated with `Rectangle` objects, a 
> custom renderer is set which displays the value of the `bottom` field in the 
> combo box. Your code, if I understand it correctly, will default to _full 
> rectangle_ rather than what's really displayed.
> 
> How does `JTable` handle this kind of situation? Or `JList`? Swing relies on 
> renderers which makes it capable of displaying an arbitrary object (it uses 
> `toString` by default, if I'm not mistaken), a renderer could provide a 
> custom view of an object in a cell, in a list.

I need to check with custom renderer. 

If I understand correctly, with current fix the `getSelectedItem` method will 
return the `rectangle` object and then calling `toString` method will return 
rectangle's dimension instead of the displayed text in JComboBox and that may 
result incorrectly. Right?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1247750687

Reply via email to