PDA

View Full Version : Strange Autocomplete problem.



Free Agent
18-Sep-2006, 10:46 PM
David are you out there?

I use dbgridautocomplete on a dbgrid in VDF 11.0, with 20 rows. It has a
default to show 10 matches max on the autocomplete dropdown list. The when
on the first row the dropdown shows 10 rows. On the second grid row, the
dropdown shows 9 row, and so on. On the 10th row only one line shows (but it
has a spinform control ! ! ! ?). On row 11 only a thin line that you can't
read shows where the dropdown should be. I found this out while demoing to a
customer?? Did I do something wrong, or have I found a new 'feature'?

Thanks,

Tod Brannen

David Martinko
18-Sep-2006, 11:07 PM
This behavior is intentional.

You need to change the displayable rows of the autocomplete to be 20 or
more. Each time you move down a row, it displays one less row (as you have
stated).

The reason is that if you have a grid that goes right to the bottom of the
screen... you can't possibly still display the maximum number of rows... so
the further down the grid you go.. the list always stops at the same place.

And it isn't a spin form... its how a grid object is displayed when there is
only one row and you have mutliple lines.

--
David Martinko
248-535-7495
Tracker Systems, Inc.
Redeemed Software
Redeemed Hosting
www.trackersys.com
www.redeemedsoftware.com
www.redeemedhosting.com

"Free Agent" <data_designTRASH@sbcglobal.net> wrote in message
news:MGzb5452GHA.556@dacmail.dataaccess.com...
David are you out there?

I use dbgridautocomplete on a dbgrid in VDF 11.0, with 20 rows. It has a
default to show 10 matches max on the autocomplete dropdown list. The when
on the first row the dropdown shows 10 rows. On the second grid row, the
dropdown shows 9 row, and so on. On the 10th row only one line shows (but it
has a spinform control ! ! ! ?). On row 11 only a thin line that you can't
read shows where the dropdown should be. I found this out while demoing to a
customer?? Did I do something wrong, or have I found a new 'feature'?

Thanks,

Tod Brannen

Tod Brannen
19-Sep-2006, 08:41 AM
>
> The reason is that if you have a grid that goes right to the bottom of the
> screen... you can't possibly still display the maximum number of rows...
so
> the further down the grid you go.. the list always stops at the same
place.
>

David,

Thanks for the reply. I'm glad it was an intended feature. How about this,
If there are not enough lines at the bottom, display the list above the row?
I notice something similar in some apps when you do a right click. Depending
on where the cursor is, the menu appears above or below so it will all
display on the screen. Is that a possibility?

Thanks for the great control.

Tod Brannen

David Martinko
19-Sep-2006, 09:09 AM
Certainly a possibility... but not something I plan to implement for a long
time.

You can use the offset property to accomplish this...

All you have to do is determine how many rows are returned... and thereby
how tall the list is... and then substract the height from the low location
to cause it to appear above the current object... and don't forget to
subtract the height of the current object as well (or row height in the case
of a Grid).

If you do this... should the list be displayed in reverse order so the
closest match is closest to the control, or should it just appear in a
different location?

A lot to consider... it could be done, though.

Next, should it automatically detect somehow that it is going to go outside
the clientarea or should the developer tell it at which row it should begin
displaying ontop. If you have a grid that is full screen (dbexplor for
example)... then you can't just say say.. always on top or always on bottom.

Then you have to consider resizing views... which I haven't considered yet.
Now ever more complexity.
Should the autocomplete be able to stretch like the screen does? If you
have 10 rows and the user can stretch to 30... then there will certainly be
a problem.
--
David Martinko
248-535-7495
Tracker Systems, Inc.
Redeemed Software
Redeemed Hosting
www.trackersys.com
www.redeemedsoftware.com
www.redeemedhosting.com

"Tod Brannen" <tbrannen@ate.net> wrote in message
news:OslwNF$2GHA.556@dacmail.dataaccess.com...
>
> The reason is that if you have a grid that goes right to the bottom of the
> screen... you can't possibly still display the maximum number of rows...
so
> the further down the grid you go.. the list always stops at the same
place.
>

David,

Thanks for the reply. I'm glad it was an intended feature. How about this,
If there are not enough lines at the bottom, display the list above the row?
I notice something similar in some apps when you do a right click. Depending
on where the cursor is, the menu appears above or below so it will all
display on the screen. Is that a possibility?

Thanks for the great control.

Tod Brannen

Marco
19-Sep-2006, 10:18 PM
Hi,

And when you've done all that, also test with dual monitors so that
negative positions also work fine.

Can you send me a copy when done ;)

Cheers,
Marco

David Martinko wrote:
> Certainly a possibility... but not something I plan to implement for a long
> time.
>
> You can use the offset property to accomplish this...
>
> All you have to do is determine how many rows are returned... and thereby
> how tall the list is... and then substract the height from the low location
> to cause it to appear above the current object... and don't forget to
> subtract the height of the current object as well (or row height in the case
> of a Grid).
>
> If you do this... should the list be displayed in reverse order so the
> closest match is closest to the control, or should it just appear in a
> different location?
>
> A lot to consider... it could be done, though.
>
> Next, should it automatically detect somehow that it is going to go outside
> the clientarea or should the developer tell it at which row it should begin
> displaying ontop. If you have a grid that is full screen (dbexplor for
> example)... then you can't just say say.. always on top or always on bottom.
>
> Then you have to consider resizing views... which I haven't considered yet.
> Now ever more complexity.
> Should the autocomplete be able to stretch like the screen does? If you
> have 10 rows and the user can stretch to 30... then there will certainly be
> a problem.

David Martinko
20-Sep-2006, 06:49 AM
In order to do that testing, can you please send me your video card and
monitors so I can test it?

--
David Martinko
248-535-7495
Tracker Systems, Inc.
Redeemed Software
Redeemed Hosting
www.trackersys.com
www.redeemedsoftware.com
www.redeemedhosting.com

"Marco Kuipers" <marco.kuipers@nci.com.au> wrote in message
news:wVCTBOG3GHA.2376@dacmail.dataaccess.com...
Hi,

And when you've done all that, also test with dual monitors so that
negative positions also work fine.

Can you send me a copy when done ;)

Cheers,
Marco

David Martinko wrote:
> Certainly a possibility... but not something I plan to implement for a
> long
> time.
>
> You can use the offset property to accomplish this...
>
> All you have to do is determine how many rows are returned... and thereby
> how tall the list is... and then substract the height from the low
> location
> to cause it to appear above the current object... and don't forget to
> subtract the height of the current object as well (or row height in the
> case
> of a Grid).
>
> If you do this... should the list be displayed in reverse order so the
> closest match is closest to the control, or should it just appear in a
> different location?
>
> A lot to consider... it could be done, though.
>
> Next, should it automatically detect somehow that it is going to go
> outside
> the clientarea or should the developer tell it at which row it should
> begin
> displaying ontop. If you have a grid that is full screen (dbexplor for
> example)... then you can't just say say.. always on top or always on
> bottom.
>
> Then you have to consider resizing views... which I haven't considered
> yet.
> Now ever more complexity.
> Should the autocomplete be able to stretch like the screen does? If you
> have 10 rows and the user can stretch to 30... then there will certainly
> be
> a problem.

Tod Brannen
20-Sep-2006, 04:49 PM
David,

I changed the displayable rows to 25 and that works fine.

Thanks,

Tod Brannen

matthewd
21-Sep-2006, 12:21 PM
Marco Kuipers wrote:

> And when you've done all that, also test with dual monitors so that
> negative positions also work fine.

I just tested it on mine, and the drop down worked fine. I also checked
the code and didn't see anything that would try to adjust negative
coordinates...

--
Best regards,

Matt Davidian
Datatech
Fresno, CA
http://www.Datatechag.com