Масштабирование размера формы и размера шрифтов нужен код на Lua Cheat Engine

Dima245

Новичок
Автор темы
1
0
Здравствуйте уважаемые программисты форума blast, прошу помочь по коду Lua Cheat Engine 7.5
делаю трейнер в программе Cheat Engine и проблема заключается в масштабирование размера формы и размера шрифтов при изменения масштабирование разметки, а также разрешения экрана в самой операционной системе windows в разделе параметры экрана, запущенный трейнер, сама форма меняются и становятся больше нежели и сам текс в трейнер становится больше и выходит за пределами трейнер, я по простому здел такой код, так как не силён в Lua, но данный код работает не эффективно и шрифты и размер формы все равно меняется, при изменения масштабирование разметки, а также разрешения экрана в самой операционной системе windows.

ВОТ ДАННЫЙ ПРОСТОЙ КОД НА Lua
local Constraints = CETrainer.CELabel1.Constraints
Constraints.MaxHeight = 0
Constraints.MaxWidth = 0
Constraints.MinHeight = 0
Constraints.MinWidth = 0
local font = CETrainer.CELabel1.Font
font.Height = -20
font.Name = 'Verdana'
font.Size = 12
Вот я на сайте https://delphisources.ru/pages... 9627507109 в свободном доступе нашёл тот самый код который нужен, но он написан на Delphi а мене нужен такой же на Lua.
Прошу пожалуйста кто может помочь переделать данный код Delphi на Lua, вот два кода которые нужно переделать под Lua коды ниже.

Вот первый Delphi код №1, который нужно переделать на Lua.

{
ВАЖНО!! : Установите в Инспекторе Объектов свойство Scaled TForm в FALSE.

Следующая программа масштабирует форму так, чтобы она выглядела одинаково
внезависимости от размера экрана и пикселей на дюйм. Расположенный ниже
участок кода проверяет, отличается ли размер экрана во время выполнения
от размера во время проектирования. Если да, Scaled устанавливается в True
и компоненты снова масштабируются так, чтобы они выводились в той же
позиции экрана, что и во время проектирования.
}
if (Screen.width &; lt > cScreenWidth) or (Screen.PixelsPerInch <>
cPixelsPerInch) then
begin
MForm.scaled := TRUE;
MForm.height := MForm.height * screen.Height div cScreenHeight;
MForm.width := MForm.width * screen.width div cScreenWidth;
MForm.ScaleBy(screen.width, cScreenWidth);

end;

Вот второй Delphi код №2, который нужно переделать под Lua.
DelphiВыделить код

{
Этот код проверяет, отличается ли размер шрифта во время выполнения от
размера во время проектирования. Если во время выполнения pixelsperinch
формы отличается от pixelsperinch во время проектирования, шрифты снова
масштабируются так, чтобы форма не отличалась от той, которая была во
время разработки. Масштабирование производится исходя из коэффициента,
получаемого путем деления значения font.height во время проектирования
на font.height во время выполнения. Font.size в этом случае работать не
будет, так как это может дать результат больший, чем текущие размеры
компонентов, при этом текст может оказаться за границами области компонента.
Например, форма создана при размерах экрана 800x600 с установленными
маленькими шрифтами, имеющими размер font.size = 8. Когда вы запускаете
в системе с 800x600 и большими шрифтами, font.size также будет равен 8,
но текст будет бОльшим чем при работе в системе с маленькими шрифтами.
Данное масштабирование позволяет иметь один и тот же размер шрифтов
при различных установках системы.
}

if (Screen.PixelsPerInch <> cPixelsPerInch) then
begin

for i := MForm.ControlCount - 1 downto 0 do
TFooClass(MForm.Controls).Font.Height :=
(MForm.Font.Height div cFontHeight) *
TFooClass(MForm.Controls).Font.Height;

end;

end;

end.