-
Content Count
2833 -
Joined
-
Last visited
-
Days Won
168
Everything posted by Uwe Raabe
-
Try Ctrl-Shift-K-T
-
It made use of canusbdrv.dll and a Delphi wrapper (see attachment). This was sometimes around 2008, so most likely that interface may have changed since then. uCanUsbDll.pas
-
It just looks like the easiest to implement, but most of the time it turns out to be the hardest to get it done right. Another approach is to wrap the code into some TThread.ForceQueue construct. F.i. a loop calling Applicaton.ProcessMessages can be refactored like this: procedure DoAllTheThings; begin DoSomething; while DoWeNeedToWait do Application.ProcessMessages; DoWhatEverIsNecessary; end; Refactored: procedure DoAllTheThings; begin DoSomething; DoTheRest; end; procedure DoTheRest; begin if DoWeNeedToWait then TThread.ForceQueue(nil, DoTheRest) else DoWhatEverIsNecessary; end; All the code is still executed in the main thread, but there is no loop blocking anything.
-
That is just like Application.ProcessMessages works: It processes the messages in the queue. If one of those messages calls Application.ProcessMessages in a loop, the outer Application.ProcessMessages will only get control back when that inner loop ends and the event call returns. IMHO, you can safely remove the frivolous in your last statement.
-
Record operator overloading, can use undocumented return type
Uwe Raabe replied to Khorkhe's topic in RTL and Delphi Object Pascal
Although it is not written explicitly in the docs I assume the Logical operators are used as if they were Bitwise operators when the condition above is not met and no corresponding Bitwise operators are declared. Nevertheless could you achieve the same using Bitwise operators in the first place.- 6 replies
-
- record
- operator-overloading
-
(and 1 more)
Tagged with:
-
The first patch for the just released RAD Studio 12.1 Athens is available: RAD Studio 12.1 Athens Patch 1 Available
-
Also there is a begin missing before the if. I suggest reading some basics about Pascal/Delphi syntax.
-
Well, you have to enable all parent controls of the PageControl to let the user change tabs. In most of the cases disabling a whole form is not what you actually need. Often it boils down to disable individual components unless you can group some with TPanel or TTabSheet. There is no common approach to that as it usually depends on your UI design - which we cannot see.
-
In that case you should use the Enabled property of each TabSheet.
-
Isn't that what Build is for (in contrast to Compile)? AFAIK, these Internal Errors happens because the compiler doesn't clean up properly. I doubt that this can be fixed by just adding an option to do so.
-
That error implies that the underlying field is not existing, probably because the dataset is not open. I would expect that the line DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.DataSource.Edit; I added to the code would cause an error first, but perhaps you just missed to copy that line into your code. Anyway, besides checking for Field <> nil, the question is: Why would you want to set that value when the dataset is not open?
-
It may be better to directly change the underlying data field instead of the control: procedure Tfrm_Page_Control.DBCheckBox44Click(Sender: TObject); begin DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.DataSource.Edit; if TDBCheckBox(sender).Checked then begin DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.Field.AsDateTime := Now; DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.Visible := True; end else begin DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.Field.Clear; DTP_STAT_HAND_GRIF_VOL_DOSSIER_OPVR_DATE.Visible := False; end; end;
-
The error message is pretty clear: Set the ShowCheckBox property of the DateTimePicker to True. You don't even have to set the Date property to NULL. It should be sufficient to uncheck the Checkbox or set the Checked property to False. That will write a NULL value to the data field instead of 30/12/1899.
-
Good idea! I just created a feature request for that. Cannot promise when it will be implemented, though.
-
I also have several Delphi versions on my system, but each if them has only one and an appropriate evaluator in that registry key.
-
Please file a bug report.
-
No problems here.
-
Custom Control for TDBCtrlGrid showing only active data
Uwe Raabe replied to Hugo Bendtner's topic in VCL
When a control has csReplicatable in its ControlStyle, it signals that it can be copied using the PaintTo method to draw its image to an arbitrary canvas. Perhaps that doesn't hold true for TMyDataLabel? -
{$Defines xxxx} not working at design time..
Uwe Raabe replied to Ian Branch's topic in Delphi IDE and APIs
As this feature is driven by LSP, it looks like the code contains a construct LSP is stumbling about. Do you notice any other problems with Ctrl-Click navigation, error insight or code insight? -
Writing if statement in the Code Editor
Uwe Raabe replied to PeterPanettone's topic in Delphi IDE and APIs
Works here even when monitors are side-by-side. Although the frame and toolbar appear on the main monitor, just clicking into the second one shots the second one. -
Strange bug with string literals in RAD Studio 12
Uwe Raabe replied to luebbe's topic in RTL and Delphi Object Pascal
Either wait that someone adds you to the Embarcadero Customers group or file an issue by yourself, which automatically adds you to the group. -
Strange bug with string literals in RAD Studio 12
Uwe Raabe replied to luebbe's topic in RTL and Delphi Object Pascal
Could be related to String with non-ASCII characters directly attached to a #xx or #$xx literal corrupts the final string Current workaround is to use a + operator to concatenate the parts. -
Writing if statement in the Code Editor
Uwe Raabe replied to PeterPanettone's topic in Delphi IDE and APIs
So, perhaps a dpi issue? Some system information may be helpful here. -
Writing if statement in the Code Editor
Uwe Raabe replied to PeterPanettone's topic in Delphi IDE and APIs
You might file a feature request in the new Quality Portal. -
OT? Forum credentials for C++ builder XE-5 install
Uwe Raabe replied to BruceV's topic in General Help
The credentials for this forum and Embarcadero Licensing are two totally independent things. This forum is not even driven by Embarcadero.- 3 replies
-
- installation
- xe-5
-
(and 1 more)
Tagged with: