#857
|
||||
|
||||
Quote:
FireMonkey is a different story. while working with FireMonkey (FMX), especially when integrating with native components like WebView2, there're certain limitations due to how FMX and the underlying platform handle windows and rendering. FMX is designed to be cross-platform, with a focus on vector-based, hardware-accelerated graphics, while traditional controls like WebView2 rely on native Windows-specific window handles (HWND) to be embedded. to embed WebView2 within a FireMonkey form, we use 'FMXForm.Handle', which provides the necessary window handle (HWND) for WebView2 to render its content. this works because a form in FMX has an associated native window, and we can retrieve its handle. however, FMX objects like 'TRectangle', 'TPanel', and other 'TFMXObject' descendants don't have an underlying native window (HWND). they're drawn directly onto the GPU and managed by the FireMonkey rendering engine, which makes them platform-agnostic but without any native window handle. since WebView2 requires an actual window handle to render its content, it isn't possible to use a 'TFMXObject' like 'TRectangle' as the parent window for WebView2. in essence, FireMonkey objects and native components like WebView2 operate in fundamentally different ways. while you can embed WebView2 inside a FireMonkey form by setting the parent window to the form handle, using a 'TFMXObject' as a parent isn't feasible due to the lack of a native window handle in FireMonkey controls. not only the ones you mentioned, but i also want to add more. however, it isn’t possible due to compatibility limitations. . |
#858
|
||||
|
||||
FCustomMemo
Quote:
|
#859
|
||||
|
||||
auto-change the theme from dark to light in FCustomFluentWindow
Is it possible to auto-change the theme from dark to light in FCustomFluentWindow?
FMXInno - Auto Dark-Light Mode |
#860
|
||||
|
||||
Quote:
@audiofeel, i've provided two examples below: one uses regular Checkboxes, and the other uses CheckboxTree. you can use them as a reference. Note: i discovered unexpected behavior in MInI. it's a generic issue, not an error on my part. however, i applied a hotfix for it. you can download MInI and FMXInno [June-10] below. . |
The Following 8 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
almjedgroup (23-08-2024), audiofeel (19-08-2024), Behnam2018 (20-08-2024), Gehrman (24-09-2024), hitman797 (20-08-2024), Jahan1373 (21-08-2024), Qirashi (14-09-2024), ScOOt3r (19-08-2024) |
#861
|
||||
|
||||
FMXInno - Updates
[ FMXInno Cumulative Update - 2024/Aug/28 ]
--- Changelog Code:
* Added Custom Blueprints: 1. 'FAdvancedMemo' 2. 'FAdvancedShape' 3. 'FAdvancedNotification' * Deprecated: - 'pWinNotification' has been removed. - The example 'Example_WinNotifications.iss' has been removed. * Enhancements: - Auto-Dark Mode: Added support for auto-dark mode in 'FCustomFluentWindow'. - Updated Components: - Updated all classes and custom blueprints. - Updated gradient color settings. - Updated 'MInI'. - Updated 'xBass' plugin to the latest version. - Updated 'WebView2' to the latest version. - Error Handling: Improved error handling and messages. - FMXInnoShutdown Function: Enhanced for a smoother exit. - FMXInnoShutDownUn: Now defined by default in 'FMXInnoHandle.iss'. You need to remove it from your scripts. * Fixes: - Fixed null pointer access errors. - Fixed runtime errors reported by users and discovered during debugging. - Fixed memory deallocation issues at exit. * Future Updates: - Advanced 3D objects and 3D animations are planned for future releases. * Miscellaneous: - Various other improvements and bug fixes. Advanced Notification: Quote:
Code:
procedure CsNotifyOnActivated(Sender: INotification; nArguments: WideString; nUserInput: INotificationUserInput); begin MemLog.Clear; if Sender = csNotification1.Handle then begin case nArguments of 'send' : MemLog.AddLine('* Send button clicked!'#13#10); 'ok' : MemLog.AddLine('* Ok button clicked!'#13#10); 'cancel' : MemLog.AddLine('* Cancel button clicked!'#13#10); '' : MemLog.AddLine('* Clicked on the content!'#13#10); else MemLog.AddLine('Args:'#9 + nArguments + #13#10); end; // Textbox input if csNotifyBuilder1.IsUserInputValueExist(nUserInput, 'txtbx_id1') then MemLog.AddLine('> Input Text:'#9#9'[' + csNotifyBuilder1.GetUserInputValueStr(nUserInput, 'txtbx_id1') + ']'); // Selectbox input if csNotifyBuilder1.IsUserInputValueExist(nUserInput, 'selbx_id1') then MemLog.AddLine('> Shutdown Timer:'#9'[' + csNotifyBuilder1.GetUserInputValueStr(nUserInput, 'selbx_id1') + ' Minutes]'); end; end; Code:
// Content csNotifyContent1.FCreate; //csNotifyContent1.Scenario(nsIncomingCall); csNotifyContent1.UseButtonStyle(True); // For Ok, Cancel button style. csNotifyContent1.Duration(ndLong); // Duration: [Short == 2 sec | Default == 5 sec | Long == 25 sec] csNotifyContent1.AddInputTextBox(csContentTextBox1.Handle); // Textbox csNotifyContent1.AddSelectionBox(csContentSelectBox1.Handle); // Selectbox csNotifyContent1.AddButton(csContentBtnSend.Handle); // Send Button csNotifyContent1.AddButton(csContentBtnCancel.Handle); // Cancel Button csNotifyContent1.AddButton(csContentBtnOk.Handle); // Ok Button csNotifyContent1.AddImage(csContentHeaderImage.Handle); // Header Image csNotifyContent1.AddImage(csContentAppImage.Handle); // App Image csNotifyContent1.AddText(csContentCaption1.Handle); // Caption csNotifyContent1.AddText(csContentDesc1.Handle); // Description csNotifyContent1.AddAudio(csContentAudio.Handle); // Audio // Notification csNotification1.FCreate(csNotifyContent1.Handle, csNotifyBuilder1.Handle); if not csNotification1.ParamIsValueExists('my_desc') then csNotification1.ParamSetValue('my_desc', sDesc); csNotification1.OnActivated(@CsNotifyOnActivated); // OnActivate csNotification1.OnDismissed(@CsNotifyOnDismissed); // OnDismissed csNotification1.OnFailed(@CsNotifyOnFailed); // OnFailed // Show Notification csNotifyBuilder1.ShowNotification(csNotification1.Handle); Advanced Shapes: Quote:
Code:
{ AdvancedShape } csShapeData := 'M 249.2615 123.1455' +#13#10+ 'c 18.9705 -33.9615 -4.257 -74.7495 -42.94 -78.602 l -14.116 -1.4065' +#13#10+ 'c -10.295 -1.0265 -19.491 -5.487 -27.1315 -14.064' +#13#10+ 'c -26.5925 -29.8475 -76.1095 -22.477 -92.41 13.382' +#13#10+ 'c -3.97 8.733 -11.149 15.719 -20.214 19.672 l -19.8865 8.67' +#13#10+ 'c -31.6995 13.82 -42.447 52.167 -22.424 79.5915 l 12.618 17.2815' +#13#10+ 'c 2.7405 3.754 4.741 7.9035 5.9465 12.333 l 6.266 23.0365' +#13#10+ 'c 8.5835 31.5575 44.3775 48.61 75.6205 35.3465 l 2.675 -1.1355' +#13#10+ 'c 7.9505 -3.3755 16.996 -4.1935 25.466 -2.308 l 41.024 9.1345' +#13#10+ 'c 39.9665 8.899 75.195 -25.787 66.27 -63.9125 l -5.192 -22.1755' +#13#10+ 'c -2.1015 -8.9765 -0.762 -18.39 3.772 -26.506 l 4.656 -8.3375 z'; csShape.FCreate(FMXForm.Handle); csShape.SetBounds(65, 80, 265, 260); csShape.Data_Str(csShapeData); csShape.Data_WrapMode(spwmOriginal); csShape.FillGradient($FF69EACB, $FF6654F1, gsLinear); The first post has been updated—check it out! . |
The Following 11 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (27-08-2024), Behnam2018 (27-08-2024), Ele (27-08-2024), Fak Eid (28-08-2024), hitman797 (30-08-2024), Jahan1373 (28-08-2024), Lord.Freddy (27-08-2024), observer23232 (27-08-2024), ScOOt3r (27-08-2024), Tihiy_Don (29-08-2024), Wanterlude (11-09-2024) |
#862
|
|||
|
|||
Urgent Upgrades
When trying to create an .ini file for setting config of my installer using:
INI_Maker: FNewINI; INI_Maker.FCreate(ExpandConstant('{src}\Game\Insta ller.ini')); it is creating the file in UTF-8 with BOM which is messing with Inno Compiler and not producing the desired result. How can I have FNewINI to create the file in UTF-8 format. In case when the main section say [Execs] doesn't exists and we create the SubSection using FNewINI: Code:
INI_Maker.WriteSubString('Execs', 'AppExe'+IntToStr(j), 'Name', ExeEdit[i].GetText); INI_Maker.WriteSubString('Execs', 'AppExe'+IntToStr(j), 'Filepath', ExeEdit[i+1].GetText); INI_Maker.WriteSubString('Execs', 'AppExe'+IntToStr(j), 'Parameters', ExeEdit[i+2].GetText); Desired output should be: Code:
[Execs] [Execs\AppExe1] Name=Horizon Forbidden West Filepath=HorizonForbiddenWest.exe Parameters=--fullscreen Code:
[Execs\AppExe1] Name=Horizon Forbidden West Filepath=HorizonForbiddenWest.exe Parameters=--fullscreen No Mouse Actions like: OnMouseEnter, OnMouseLeave, OnClick are working |
#863
|
|||
|
|||
Quote:
|
The Following User Says Thank You to Tihiy_Don For This Useful Post: | ||
Qirashi (11-09-2024) |
#864
|
|||
|
|||
Please add methods:
onMouseEnter(Event: TNotifyEvent); procedure onMouseLeave(Event: TNotifyEvent); For the checkboxtree component (checkbox, radiobutton). Last edited by Tihiy_Don; 10-09-2024 at 21:10. |
The Following User Says Thank You to Tihiy_Don For This Useful Post: | ||
Qirashi (11-09-2024) |
#865
|
|||
|
|||
There is a problem with the RemoveObject2 method for FCombobox. It does not work properly and does not delete the specified element.
|
#866
|
||||
|
||||
Hi everyone
hi BLACKFIRE69, I want to remove all the button mods and leave them original anthem, browse, back, next, cancel and pause, can we do that? |
The Following User Says Thank You to Dario06 For This Useful Post: | ||
Behnam2018 (29-09-2024) |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Windows Fluent Effects Standalone API - InnoSetup / VCL / FXM | BLACKFIRE69 | Conversion Tutorials | 0 | 15-11-2023 17:35 |
Windows Phone Installer similar to razor12911's original design? | Kitsune1982 | Conversion Tutorials | 0 | 02-07-2020 13:04 |
INDEX - Conversion Tutorial Index | Razor12911 | Conversion Tutorials | 5 | 11-06-2020 02:05 |
Frequently Asked Questions | Joe Forster/STA | PC Games - Frequently Asked Questions | 0 | 29-11-2005 09:48 |