Forum Replies Created
-
AuthorPosts
-
Hi Barry,
You can use the Values string list and use the IndexOf method on that to get the index of the item that contains the value you are looking for.
procedure TForm25.RzButton1Click(Sender: TObject); var Idx: Integer; begin Idx := RzComboBox1.Values.IndexOf( 'SomeValue' ); RzComboBox1.ItemIndex := Idx; end;Ray
Hi,
I would like to apologize for my apparent lack of response. I, too, have been very disappointed at how the components have been handled, especially with the 10.4 release. After my initial response in this thread, I did reach out to Embarcadero multiple times. I did receive responses, but they were essentially, “it will be coming soon” type messages. I did not think those responses would help, so I decided not to post. However, I should have posted when the components finally appeared on GetIt. Fortunately, others took care of that.
Let me reiterate that I am very disappointed at how the components have been handled, and I share in your frustration. Especially since Raize Software always focused on having all of our products updated and ready to go when a new version of RAD Studio was released.
This is not how it was supposed to be.
Ray
Hi Navid,
CodeSite Studio 5.3.4 will be available shortly–updating the website now.
As for the book, I really appreciate the feedback. The biggest challenge for me to produce a new edition is finding the time in my schedule to put it together. I hope someday I’ll be able to do that.
Ray
Did the Enabled property of the TRzFormState component on your main form get set to False? I assume that the RegIniFile property is set to an instance of TRzRegIniFile–otherwise, you would get message boxes displaying when you start and stop your app. Did you change any properties of the TRzRegIniFile component?
Ray
Hi Barry and Joe,
That is an excellent question. I will reach out to Embarcadero to find out what is going on.Ray
Hi Barry,
The HintPause and HintShortPause properties of TRzBalloonHints simply map to the same properties in the TApplication class. From the RAD Studio doc:
HintPause
Specifies the time interval that passes before the control’s Help Hint appears when the user places the mouse pointer on a control or menu item.HintShortPause
Specifies the time period to wait before bringing up a Hint if another Hint has already been shown.From what you describe, it sounds like you want the TApplication.HintHidePause property, which specifies the time interval to wait before hiding the Help Hint if the mouse has not moved from the control or menu item.
Ray
Hi,
What version of CodeSite are you using? The original poster was initially using 5.1.8 and since then upgraded to 5.3.3. This helped, although the original poster then ran into a different issue that was related to configuration.
As for the memory consumption, I can provide a little more background (from email to original poster). The Dispatcher receives incoming CodeSite messages from applications and then adds them onto a queue to be dispatched. It is certainly possible for more messages to come into the Dispatcher than the dispatcher can actually dispatch. You can see this if the Dispatcher icon is visible in the system notification area. The interior of the Dispatcher icon will turn shades of yellow. The brighter the color yellow, the greater the workload (i.e. more messages need to be dispatched). Since each message takes up space in the queue, it is possible for memory use to grow if the messages cannot be dispatched (or, if it takes a long time to dispatch). Of course, another cause of memory use would be that the Dispatcher is not cleaning up the space used by a message added to the queue after it has been dispatched.
Ray
Hi Barry,
The Items.AddPair method is actually implemented in the VCL TStrings class and, as its name suggests, is used for adding name=value pairs separated by the ‘=’ sign. The TRzTabbedListBox uses the Tab character #9 as the delimiter, and also supports multiple tab-stops.
So, to add your items to the list box, you should do the following:tlbMatches.Items.Add( v + #9 + n );
Or, you can use the TRzCustomListBox shortcut of:
tlbMatches.Add( v + #9 + n );
Ray
You’re welcome. Happy to help
Ray
I reported this issue to Embarcadero: RSP-28164
Ray
Okay, digging a little deeper, there is definitely a change in the AquaGraphite VCL Style between XE8 and RX10. I loaded the AquaGraphite.vsf file from XE8 into the Bitmap Style Designer, and then I loaded the AquaGraphite.vsf file from RX10 into the Bitmap Style Designer.
You can clearly see the difference in the ListBox style. In the XE8 version, the list box background is simply black. However, when you look at the same ListBox style in the RX10 version of the AquaGraphite.vsf style you see that there is a glowing check mark right in the middle of the ListBox background. this is why you are seeing the “artifacts” in the widgets. The same checkmark appears in other style backgrounds as well.
The root cause of the problem lies in the source image “style.png” embedded in the style file. In the Bitmap Style Designer, you can clearly see that in RX10 or later, the style.png image has a black rectangle that has the check mark within the bounds of the rectangle. And this rectangle servers as the source image for many control types in the style.
So, to fix this, you can either select a different VCL Style, or you can try to modify the style (i.e. remove the check mark from the source image).
I would also suggest reporting this issue to Embarcadero, so that the style can be fixed for future releases.
Ray
Hi,
I can confirm that the problem first started appearing in RAD Studio 10 Seattle. In XE8 and earlier the VCL Styles appeared correctly. I still need to investigate whether there was a change in the components that is causing this, or a changing in the Style definition itself.
Ray
April 30, 2020 at 12:42 am in reply to: Codesite (Express) doesn’t work when called from a 64-bit application. #1788Hi Steven,
I apologize for the delay. I’ve been looking over old posts and emails to see if anything like this has been reported before. I vaguely recall something similar to what you are reporting, but was unable to locate anything concrete. I’ll keep looking.
In the meantime, what I suspect is happening is that when your 64-bit COM Dll is trying to send a CodeSite message (using the TCodeSiteLogger) to the Dispatcher, the default transport mechanism is getting blocked because by Windows. The default transport method between loggers and Dispatcher is WM_COPYDATA. Over the years, Microsoft keeps reducing the situations in which this message is allowed. For example, a service app runs in a different window station from the user’s desktop and WM_COPYDATA messages are not allowed to transport across window stations. I believe the same thing is happening between the 64-bit COM Dll and the 32-bit Dispatcher. There is no problem between 64-bit app and 32-bit Dispatcher.
I believe the solution to the 64-bit COM DLL situation is the same as logging from a service. That is, the transport method the loggers use needs to be changed to TCP. This is accomplished by calling the ConnectUsingTcp method before sending your first CodeSite message. We recommend calling ConnectUsingTcp on the CodeSiteManager, so that all CodeSite loggers will use the same connection method.
Ray
Hi,
Thanks for posting the screenshot. I was able to duplicate the effect you are seeing in a brand new project. My gut reaction is that something changed in the Aqua Graphite VCL Style, but I will need to investigate this more thoroughly to figure out just what is happening. Clearly something has changed in a recent release of VCL Styles because this most definitely did not happen before.
Ray
Hi,
I tried to duplicate the issue that you reported, but I was unable to do so. What version of Delphi are you using? Also, where exactly does the Nike symbol appear? It sounds like a missing font issue. Although, I would expect that the issue would be present even without selecting a VCL Style.
Ray
-
AuthorPosts