On Mon, Dec 12, 2011 at 12:52 PM, Luiz Americo Pereira Camara <luiz...@oi.com.br> wrote: > On 12/12/2011 09:23, Marcos Douglas wrote: >> >> On Sat, Dec 10, 2011 at 11:15 AM, Luiz Americo Pereira Camara >> <luiz...@oi.com.br> wrote: >>> >>> In order to fix some bugs i did significant changes in >>> TDBLookup[List|Combo]Box controls >>> >>> I did a lot of testing but may broken something >>> >>> Please report problems you have >> >> I found a bug in TDBLookupComboBox >> To reproduce: >> 1. Define properties AutoComplete and AutoDropDown to True; >> 2. Type a new value (the DropDown will open) that not exists in DataSet >> (list); >> 3. If you type ENTER the combo will clear, because no value on list >> was found (OK); >> 4. Repeat #2. Now if you type [Down] to select a item (use the >> keyboard and don't type ENTER), but after type a new value that not >> exists in DataSet list, the combo is not cleaned. >> > > AFAIK this is the same behavior as before my changes.
No. I compared 2 apps using r34068 and r34129 and they have a different comportment. > It's a drawback from the decision to allow use the dropdown style (Delphi > TDBLookupControl allows only dropdownlist, so no reference here what's the > best approach) I prefer csDropDownList, but AutoComplete only works using csDropDown! And I need it. > I think is not a good idea to clear the text the user entered. In the other > side the control can have inconsistent values compared to dataset that is > also not good. I don't know if is good or not, but before this change the component clean itself if the KeyValue is NULL. > Let the other DBLookup users do an opinion. If they think this is the > correct behavior i can implement that (clearing the text that does not exist > in the list). > > For myself, i prefer to use dropdownlist, since the chance to user be > confused is smaller. If dropdownlist option works like TRxDBLookupCombo works in Delphi 7... would be very good. > BTW: > What's your widgetset? Only Windows: Lazarus 0.9.31 r34129 FPC 2.5.1 i386-win32-win32/win64 > Pressing enter in either cases under win32 does not clear the content here. > Just select the text I think I wrote better in bug tracker: 1. Define properties AutoComplete and AutoDropDown to True; 2. Type a new value (the DropDown will open) that not exists in DataSet (list); 3. If you type ENTER the combo will clear, because no value on list was found (OK); 4. Repeat 0000002. Now if you type [Down] to select a item (use the keyboard and don't type ENTER), but after type a new value that not exists in DataSet list and ENTER. The ComboBox is not cleaned. Attention in: + AutoComplete and AutroDropDown; + Item #4: When the dropdown open, just click down (selecting a item) but don't close it; after, type something that do not exists in list and press ENTER. You see the Text typed still there. Marcos Douglas -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus