Jump to content

Uwe Raabe

Members
  • Content Count

    2488
  • Joined

  • Last visited

  • Days Won

    143

Everything posted by Uwe Raabe

  1. Uwe Raabe

    Use Interbase Developer license on 2 Windows PCs?

    Actually that is not the case. The developer license is needed for the Interbase Server, while the Client doesn't need a license - only access to the Interbase Server (i.e. the server PC has to be up and running and the client needs to establish a connection to it). Regarding the Firebird suggestion: Don't try to install Firebird (Server or Client) on a PC where Interbase already is installed unless you know exactly what you are doing. Most likely you will break at least one of these installations.
  2. Uwe Raabe

    Regression - Delphi 12 - IsZero()

    As far as I can see there are no changes in the implementation. Also a quick console example shows no regression. Can you please provide the source for your test case to verify? BTW, could it be only a problem with Watch Variables?
  3. I'm not sure if that is what you are after: Dataset Enumerator Reloaded. The current location for the unit described in that article is now on GitHub as part of my CmonLib library: https://github.com/UweRaabe/CmonLib/blob/main/source/Cmon.DataSetHelper.pas The code allows to retrieve the current record of a dataset either as a record or a class. The record example shown in the article requires the declaration of a record type [DBFields(mapAuto)] TEmployee = record EmpNo: Integer; LastName: string; FirstName: string; PhoneExt: string; HireDate: TDateTime; Salary: Double; end; With that you can retrieve the data of the current dataset record like this: var Employee: TEmployee; begin { Show the employee's name and the hire date. } Employee := QuEmployee.GetCurrentRec<TEmployee>; ShowMessage(Format('%s %s was hired on %s', [Employee.FirstName, Employee.LastName, FormatDateTime('dddddd', Employee.HireDate)])); end; The article also has another example using a class instead of a record.
  4. Seems to be a known issue: https://quality.embarcadero.com/browse/RSP-23505 Assuming that the Tools - Editor - Line Endings setting is still set as default, the question is: Why doesn't the IDE fix these wrong line endings to CRLF on loading?
  5. Uwe Raabe

    Close current form when opening other form

    The question is: Do you want the current form to close before you have entered the data in the new one or after that?
  6. I suggest to open a support ticket for Registration & Installation via https://www.embarcadero.com/support
  7. Uwe Raabe

    DBCheckbox uncheck all

    As long as you don't change it, any field in a new record is initialized with Null. A TDBCheckBox displays a NULL as grayed - that is what you see. The easiest way to avoid this is to wire the OnNewRecord event of the dataset and initialize the relevant fields with False.
  8. Uwe Raabe

    Assign Null value to date mySQL

    How do you currently write a date?
  9. Uwe Raabe

    Check if selected row in DBGrid

    Perhaps I have a different concept of selected, but any non-empty dataset always has a current record, wich is where the indicator is when dgIndicator is part of the options. The field values from the dataset resemble this current record/row. In addition to this current row, a TDBGrid also has some SelectedRows represented by a TBookmarkList. So with do you mean the current row or the bookmark list?
  10. Uwe Raabe

    Hunting a unit reference

    You need Version 13.1.0.2220 for that.
  11. Uwe Raabe

    FloatToJSON

    Probably because of this one: https://quality.embarcadero.com/browse/RSP-38387
  12. Uwe Raabe

    Hunting a unit reference

    You can check the map file. In case you are already using MMX, its Analyze Unit Dependencies feature might help, too.
  13. Konopka Signature VCL Controls (KSVC), formerly known as Raize Components and available via GetIt.
  14. Uwe Raabe

    TFrame versus SubForm

    Using the same TVirtualImageList for several forms will fail if these forms are placed on monitors with different DPI. One of the main tasks of TVirtualImageList is to adjust the size of its images to match the DPI of the form. To achieve this they have to be owned by the form. See TVirtualImageList.DPIChangedMessageHandler.
  15. Uwe Raabe

    TFrame versus SubForm

    I wonder how subforms work under High-DPI conditions. There are several places in this area where a TForm is acting different to a TFrame.
  16. Uwe Raabe

    TFrame versus SubForm

    Indeed - and it is just because you simply cannot place a "SubForm" anywhere at design time. If you don't do it with a frame both are on par again.
  17. Uwe Raabe

    TFrame versus SubForm

    Can you explain how you come to this conclusion? Adding a TEdit to a frame is no different from adding a TEdit to a form. Basically a "SubForm" is just a TForm descendant, which Parent is set to another control at runtime. During design time the "SubForm" is designed as any other form. So is a frame. I guess, you are referring to adding a TEdit to a frame during design time while it is inlined (placed) into another form. You have to switch to the frame designer to do that and switch back to the form to see the change in the form. You also need to switch to the form designer of a "SubForm" to do that. In contrast to the inlined frame you can see the actual outcome at runtime only.
  18. Uwe Raabe

    TFrame versus SubForm

    That is almost the same as @Lars Fosdal describes: This approach indeed eliminates the mentioned problems that may come up when placing the frames at design time.
  19. Uwe Raabe

    TFrame versus SubForm

    Are SubForms problem free? It boils down to what your are trying to achieve. Recently I developed a VCL application for a customer that is almost solely build on frames. You need forms for dialogs and tool windows, but even those are just containing a frame. The IDE itself is built on frames, too. (OK, that may not really count for problem free)
  20. Uwe Raabe

    BringToFront alternative

    As @Dmitry Arefiev already mentioned: Replace the TLabel with TStaticText. The latter is a TWinControl and can be placed on top of other controls.
  21. Uwe Raabe

    BringToFront alternative

    The issue is that BringToFront only works inside a group of TGraphicControls (like TLabel) and TWinControls. This is from the documentation of BringToFront:
  22. Not that I am aware of. Besides that, I really question the benefits of this declaration: TBindNavigateBtn = TNavigateButton;
  23. Can you give a concrete (failing) example for that?
  24. They have been renamed to TFDCommandKind, while TFDPhysCommandKind is a simple alias now.
  25. Uwe Raabe

    What's the general opinion on v12?

    Hard to believe...
×