ChromiumTestFrm.pas 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. unit ChromiumTestFrm;
  2. interface
  3. uses
  4. Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  5. Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cefvcl, Vcl.StdCtrls, InterfaceAppCentre, AppCentreImport,
  6. Vcl.ExtCtrls, Vcl.ExtDlgs;
  7. type
  8. TForm1 = class(TForm)
  9. btn1: TButton;
  10. btn2: TButton;
  11. btn3: TButton;
  12. edt1: TEdit;
  13. btn4: TButton;
  14. clrbx1: TColorBox;
  15. btn5: TButton;
  16. btn6: TButton;
  17. img1: TImage;
  18. edt2: TEdit;
  19. btn7: TButton;
  20. btn8: TButton;
  21. dlgOpenPic1: TOpenPictureDialog;
  22. btn9: TButton;
  23. procedure btn1Click(Sender: TObject);
  24. procedure btn4Click(Sender: TObject);
  25. procedure btn3Click(Sender: TObject);
  26. procedure btn2Click(Sender: TObject);
  27. procedure clrbx1Change(Sender: TObject);
  28. procedure FormCreate(Sender: TObject);
  29. procedure btn6Click(Sender: TObject);
  30. procedure btn5Click(Sender: TObject);
  31. procedure btn7Click(Sender: TObject);
  32. procedure btn8Click(Sender: TObject);
  33. private
  34. FChromium: TChromium;
  35. public
  36. function AddHotApp(AApp: IHotApp): Boolean; stdcall;
  37. function RemoveHotApp(AApp: IHotApp): Boolean; stdcall;
  38. procedure OnASyncAppIconDownloaded(AAppKey: AnsiString; AStream: TStream); stdcall;
  39. end;
  40. var
  41. Form1: TForm1;
  42. implementation
  43. uses
  44. DataProviderImport, Vcl.Imaging.pngimage, MD5_32;
  45. {$R *.dfm}
  46. function TForm1.AddHotApp(AApp: IHotApp): Boolean;
  47. begin
  48. end;
  49. procedure TForm1.btn1Click(Sender: TObject);
  50. var
  51. AAppCentre: IAppCentre;
  52. AList: IInterfaceList;
  53. iLoop: Integer;
  54. ABuffer: TBytes;
  55. begin
  56. // AAppCentre := GetAppCentre;
  57. // AAppCentre.Login(AnsiString('ttf'), Self);
  58. // AList := AAppCentre.GetAllApps;
  59. // for iLoop := 0 to AList.Count - 1 do
  60. // begin
  61. // GetAppIconProvider.FindIcon((AList[iLoop] as IApp).GetAppKey, ABuffer);
  62. // end;
  63. // AAppCentre.OpenAppCentreFrom();
  64. // AAppCentre.ChangeUIColor(15392442);
  65. end;
  66. procedure TForm1.btn2Click(Sender: TObject);
  67. var
  68. AAppCentre: IAppCentre;
  69. begin
  70. AAppCentre := GetAppCentre;
  71. AAppCentre.CloseAppCentreForm;
  72. end;
  73. procedure TForm1.btn3Click(Sender: TObject);
  74. begin
  75. if (FChromium <> nil) and (FChromium.Browser <> nil) then
  76. FChromium.Browser.MainFrame.LoadUrl(edt1.Text);
  77. end;
  78. procedure TForm1.btn4Click(Sender: TObject);
  79. begin
  80. if FChromium = nil then
  81. begin
  82. FChromium := TChromium.Create(Self);
  83. FChromium.Parent := Self;
  84. FChromium.Align := alClient;
  85. end;
  86. end;
  87. procedure TForm1.btn5Click(Sender: TObject);
  88. begin
  89. GetAppCentre.OpenWebDebuggerTool;
  90. end;
  91. procedure TForm1.btn6Click(Sender: TObject);
  92. begin
  93. GetAppCentre.CloseWebDebuggerTool;
  94. end;
  95. procedure TForm1.btn7Click(Sender: TObject);
  96. var
  97. AFileStream: TFileStream;
  98. begin
  99. if dlgOpenPic1.Execute(Self.Handle) then
  100. begin
  101. try
  102. AFileStream := TFileStream.Create(dlgOpenPic1.FileName, fmOpenRead);
  103. GetAppIconProvider.Insert(edt2.Text, AFileStream);
  104. finally
  105. AFileStream.Free;
  106. end;
  107. end;
  108. end;
  109. procedure TForm1.btn8Click(Sender: TObject);
  110. var
  111. ABuffer: TBytes;
  112. png: TPNGObject;
  113. AStream: TMemoryStream;
  114. begin
  115. GetAppIconProvider.FindIcon('08E64E7C78B14D918A50792C8B22E5D8', ABuffer);
  116. png := TPNGObject.Create;
  117. AStream := TMemoryStream.Create;
  118. AStream.Write(ABuffer, Length(ABuffer));
  119. edt2.Text := MD5Print(BytesToMD5(ABuffer));
  120. AStream.Position := 0;
  121. png.LoadFromStream(AStream);
  122. img1.Picture.Assign(png);
  123. AStream.Free;
  124. end;
  125. procedure TForm1.clrbx1Change(Sender: TObject);
  126. begin
  127. GetAppCentre.ChangeUIColor(clrbx1.Selected);
  128. end;
  129. procedure TForm1.FormCreate(Sender: TObject);
  130. begin
  131. // if FChromium = nil then
  132. // begin
  133. // FChromium := TChromium.Create(Self);
  134. // FChromium.Parent := Self;
  135. // FChromium.Align := alClient;
  136. // end;
  137. end;
  138. procedure TForm1.OnASyncAppIconDownloaded(AAppKey: AnsiString;
  139. AStream: TStream);
  140. begin
  141. end;
  142. function TForm1.RemoveHotApp(AApp: IHotApp): Boolean;
  143. begin
  144. end;
  145. end.