I am having issues with navigator hints: in our application, there are a couple of places where the hints don't show.
I made sure that the view's OptionsBehavior.NavigatorHints is true, that OptionsView.Navigator is true and that at least some of the navigator buttons are visible and enabled. Still, in two places the hints don't show. In both cases, the grid is in a from called with ShowModal. However, when I create a simple application to recreate those conditions, the hints show just fine...
I traced in the code and fond something "interesting" in cxContainer.pas
function CanShowHint(AControl: TWinControl): Boolean;
function GetForm(AWnd: HWND; out AForm: TCustomForm;
out AFormStyle: TFormStyle): Boolean;
AControl := FindControl(AWnd);
Result := AControl is TCustomForm;
if Result then
AForm := TCustomForm(AControl);
AFormStyle := TCustomFormAccess(AForm).FormStyle;
Result := Application.Active and AControl.HandleAllocated and
(FindVCLWindow(GetMouseCursorPos) = AControl);
if Result then
ARootParent := GetRootParent(AControl.Handle);
Result := not GetForm(ARootParent, AForm, AFormStyle) or
AForm.Active or (AFormStyle = fsMDIForm) or (FVisiblePopupWindowList.Count > 0) and
I don't understand the "not" in front of "not GetForm(ARootParent, AForm, AFormStyle"). When I remove it, the hints show fine.
The rest of the statement uses AForm, which does not get a value if GetForm returns false (from what I see). So that "not" loooks suspicious to me.
Could you look into this? I hope I am not missing something obvious!
Sorry, but it's difficult to determine the cause of your problem due to the lack of information.
The possible cause is that you're using an older build of our components. Please visit our version info page at http://www.devexpress.com/Support/Versions.xml, to learn about the most recent versions of our products, and obtain instructions on how to update them. Does the problem still persist with the newer version of our components?
If so, could you please provide us with a couple of screenshots illustrating this problem, and, if possible, a sample project?
I am now using the latest version of your components.
I am able to reproduce the issue: see the attached project. I have a main form with just two buttons:
The leftmost button calls showModal to display a form with a grid where navigator hints don't work. This form comes from our real product (I did not create that form, simply removed all the code in the unit).
The rightmost button calls showModal to display a form with a grid that I created from scratch, and where the navigator hints work properly.
Also, if I change the project so that the form with the broken grid becomes the main form, then the hints work properly on that form (see comments in project source).
In my previous post, I mentionned code that looked suspicious - after looking at it again, I see that with boolean shortcuts on, AForm is assigned when it needs to be, so my point is invalid. But still, by removing that "not" in front of "GetForm", the hints show properly everywhere in my test application (probably not how to fix it, but this may gives a clue as to what is wrong).
Thank you for looking into this.
Thank you for the sample. It was very helpful.
The cause of the problem is that your form's BorderStyle property has a bsDialog value.
So , I've converted this question to a bug report.
Is your intention to post an answer to your own question?
- If so, then proceed.
- If you simply wanted to post additional information, ask for further clarification, or to just say "Thanks!", please click Leave a Comment.
- If you wish to edit your original question, please use the Edit button in the Toolbox at the top right corner of that entry.