How to show placeholder in TEdit - delphi

Is there any way to add a placeholder text to an edit?
My only idea is to always manually set the color and the text of the given edit in its OnChange event, but it seems to be a bit tedious to me.
Any other suggestions?

What you are looking for is handled by the TEdit.TextHint property. Note that it only works on XP and later with Visual Themes/Styles enabled for the app.

In case anyone got here like me through a web search, in cross-platform versions of Delphi using FMX, the placeholder display is handled by TEdit.TextPrompt.

Related

How can I disable clicking in a FMX Form?

For an Application I need the user to be disabled to click on a specific window, while he is still able to use a window, which is in front of the other window.
In Delphi, this works perfectly fine with
ExampleForm.Enabled:= False;
but in Firemonkey it seems as if the enabled property does'n exist anymore. As well, it would be really helpful if it could disable the keyboard inputs etc. as well. I would really appreciate a solution for that problem, thanks for your time!
PS: I use the Delphi 10.3 Version
In Firemonkey, you're typically expected to implement all of your controls inside of a TLayout or one of its descendants such as TGridLayout. As long as all of your controls are in there, you can disable its Enabled property. The form is really just a container and not the same type of control in FMX as it is in VCL.

Show TEdit in FireMonkey has an error in it with red border

I'm working on a mobile application where the user needs to login.
The server is returning me if the e-mail is invalid, or subdomain or password and I want to focus the TEdit that has the error. Focus is easy but I would also like to mark the edit as invalid like many web applications do.
What is the best way to do this is a consistent way so it will look correct on both Android as iOS. Is something like this built-in? I'm using Delphi 10.1
Loki's suggestion is a possible solution.
A solution which takes advantage of FMX features would be to use a TGlowEffect for the red frame around the TEdit and then use a TPopup to create the hint.
the style it's just a nightmare in 99% of the case, so i strongly suggest to not touch it. i will instead put a Trectangle as the background of the Tedit, put the Tedit as Transparent (you already have this style ready in the stylelookup in the object inspector), and then simply set the stroke.color of the trectangle.
i m working also right now on a 100% native Tedit on ios/android/windows i guess i will finish this code in around 1 week.

VCL style mac look style designer

Recently I've been doing some research in to VCL Styling (Embarcadero XE2 for Delphi).
I can load and set the styles so that works fine.
Currently I'm exploring the VCL Style Designer and what I try to figure out is how can I move the minimize, maximize, resize, close and help button to the left instead of the current default right while the application text (caption of the form) is on the right.
I am at my whits end and hope some one can give me some pointers.
So basically what I try to 'emulate' is the Mac look on a Windows form.
Any help is welcome.
What do you want accomplish is not related to the VCL Style Designer, instead you must create a custom form style hook.
Follow these steps.
Create (and register) a new form style hook descending from the TFormStyleHook class.
Override the PaintNC method to draw the title buttons in the new positions.
Handle the WM_NCMOUSEMOVE, WM_NCLBUTTONDOWN and WM_WM_NCLBUTTONUP messages to detect the status of the title buttons (hot, pressed) and fire the actions (close, restore, maximize, minimize).

Create a Ribbon Control in Delphi with Combobox as one of the control?

I am a newbie to using Delphi 2010 to write Ribbon Control...
I wanted a comboBox control with 5 to 6 lines for user to choose from on my ribbon...
I've set the CommandStyle of the TActionClient to csCombobox and I had a hard time figuring out how to set the content of my comboxbox and also the control seem to be disabled once I set the CommandStyle from csButton to csCombobox.
Please help.
I've never used the Ribbon before, but i made a little test and this is wath i get, I don't know if this is wath you want:
alt text http://img2.imageshack.us/img2/6885/ribboncombo.png
Just add strings to the Items property

DateTimePicker Alignment in Delphi 7

My problem is following: I need to align text inside DateTimePicker component to center. This component however doesn't have Alignment property. This component comes from TCommonCalendar, which also doesn't have this property. Can anybody think of possible solution?
Thank you,
Tofig Hasanov
There are many alternatives to TDateTimePicker out there, for a reason: They can the stuff that TDateTimePicker cannot.
I doubt it is possible.
Behind the scenes, when you create a TDateTimePicker, a window common control SysDateTimePick32 get's created. It looks like it does not allow it's Style to be changed from ES_LEFT to ES_CENTER (or ES_RIGHT for that matter).
I hope to be proven wrong.

Resources