|
|
uFrmMain.pas
488行 -491行
{ 跑马灯文本 = 原版 0x612368 那个 81 B 字面量(全镜像唯一出现「持续领先」的地方,
运行期抓帧读出的滚动文本与它的内层文本逐字一致)。要换品牌文案改这一行即可。 }
GXX_MARQUEE_HTML =
'<a href="http://www.gxxm2.com"><font color="blue">Gxx引擎 持续领先 >> </font></a>';
1680行- 1700行
{ ★ 主窗体跑马灯 —— 原版 FormCreate 尾部(0x612049 起)被 VMProtect 虚拟化,
这里按可观测证据还原:
1) 原版 uses 清单里含 RealTimeMarquee,而 DFM(145 个组件)里**没有**该控件
⇒ 它只能由运行期代码创建;
2) 运行期窗口树对拍:官方件 TFrmMain 下有 TRealTimeMarquee 窗口,重建件没有;
3) 父窗/几何:父窗 = TabSheet「登录器生成」(tsMakeGameLogin),相对父窗 (4, 469),
尺寸 200x20,WS_VISIBLE|WS_CHILD,文本自右向左滚动
(帧间实测 ≈100 px/s = 组件默认 Interval=10 / Step=1);
4) 文本 = 0x612368 的 81 B 字面量,滚动时呈蓝色 ⇒ 走组件的 msHTML 渲染。
本工程此前完全没有它 ⇒ 底部只剩静态红字 htmlbl1(4,489),上方那片空白就是它该在的位置。 }
if GxxMarquee = nil then
begin
GxxMarquee := TRealTimeMarquee.Create(Self); { Owner = Self,随窗体一起释放 }
GxxMarquee.Parent := tsMakeGameLogin;
GxxMarquee.SetBounds(4, 469, 200, 20);
GxxMarquee.Items.Add;
GxxMarquee.Items[0].Text := GXX_MARQUEE_HTML;
GxxMarquee.Items[0].Style := msHTML;
GxxMarquee.Active := True;
end;
end;
|
|