当它应该出现时框架没有出现......(ROBLOX GUI)
Posted
技术标签:
【中文标题】当它应该出现时框架没有出现......(ROBLOX GUI)【英文标题】:Frame not appearing when it is supposed to... (ROBLOX GUI) 【发布时间】:2021-03-08 21:22:27 【问题描述】:我正在制作一个允许您创建远程操作系统的 Os 模块,但是当背景框架加载到新窗口中时,只会加载一个随机窗口,但它基本上会被背景框架“覆盖”。
我有一个关于脚本助手的帖子:https://scriptinghelpers.org/questions/116285/instancenew-but-not-working-as-expected-module
但似乎没有人希望网站上没有人知道该怎么做
我的主要操作系统模块代码:
local module =
function module.__Version__()
local ROS = '1.00'
local ROS = tostring(ROS)
print('Version: '..ROS)
end
function module.create_environment(master)
local main = Instance.new('ScreenGui',master)
main.Name = ("ROS")
return(main)
end
function module.create_background(env)
local Frame = Instance.new('Frame',env)
Frame.Name = ('Background')
Frame.Size = UDim2.new(2,0,2,0)
Frame.Position = UDim2.new(0, 0,-0.5, 0)
Frame.BackgroundColor3 = Color3.new(0.337255, 0.290196, 1)
return(Frame)
end
function module.create_taskbar(env)
local main = Instance.new("Frame",env)
main.BackgroundColor3 = Color3.new(0, 0, 0)
main.Size = UDim2.new(2, 0,0, 45)
main.Position = UDim2.new(-0.5, 0,1, -45)
return(main)
end
function module.create_app_button(icon,env,X,Y)
local Btn = Instance.new('ImageButton',env)
Btn.Image = (tostring(icon))
Btn.Size = UDim2.new(0, 49,0, 49)
Btn.Position = UDim2.new(0, tonumber(X), 0, tonumber(Y))
return(Btn)
end
function module.create_clone_env(env)
local coloned_env = env:Clone()
coloned_env.Parent = env.Parent
end
function module.create_time_gui(env)
local main = Instance.new('TextLabel',env)
main.Size = UDim2.new(0, 115,0, 41)
main.Position = UDim2.new(1, -145,1, -44)
main.TextColor3 = Color3.new(1, 1, 1)
main.BackgroundTransparency = 1
main.TextScaled = true
main.Font = Enum.Font.Ubuntu
local assetId = 5990705305
local InsertService = game:GetService("InsertService")
local model = InsertService:LoadAsset(assetId)
model.Time_Manager.Parent = main
return(main)
end
function module.create_start_button(env)
local main_button = Instance.new('TextButton',env)
main_button.Size = UDim2.new(0, 146,0, 45)
main_button.Position = UDim2.new(0, 0,1, -44)
main_button.TextColor3 = Color3.new(0, 0, 0)
main_button.Text = "Start"
main_button.TextSize = 25
main_button.Font = Enum.Font.Arial
main_button.BorderSizePixel = 0
return(main_button)
end
function module.create_app(env)
local frame = Instance.new('Frame',env)
local round = Instance.new("UICorner",frame)
local top_frame = Instance.new('Frame',frame)
local exit_button = Instance.new('TextButton',top_frame)
local assetId = 5995055509
local InsertService = game:GetService("InsertService")
local model = InsertService:LoadAsset(assetId)
round.CornerRadius = UDim.new(0,20)
frame.Size = UDim2.new(0, 1084,0, 673)
frame.Position = UDim2.new(0.5, -542,0.5, -336)
frame.BackgroundColor3 = Color3.new(1, 1, 1)
top_frame.Size = UDim2.new(1, 0,0.003, 28)
top_frame.Position = UDim2.new(0, 0,0, 0)
top_frame.BackgroundColor3 = Color3.new(0.611765, 0.611765, 0.611765)
top_frame.BorderSizePixel = 0
exit_button.Size = UDim2.new(0, 74,0, 30)
exit_button.Position = UDim2.new(1, -74,0.5, -15)
exit_button.Text = ("X")
exit_button.BorderSizePixel = 0
exit_button.TextColor3 = Color3.new(1, 1, 1)
exit_button.BackgroundColor3 = Color3.new(1, 0, 0)
exit_button.TextStrokeTransparency = 0
exit_button.TextSize = 17
model.LocalScript.Parent = exit_button
model:Destroy()
return(frame)
end
return module
一切正常; create_taskbar()
,create_time_gui()
,create_start_button()
但它只是create_app()
这是我的操作系统模块所做的:
这是我的操作系统模块制作的操作系统:
正如我所说,背景会覆盖我的create_app()
有没有办法防止这种情况发生?
【问题讨论】:
快捷方式:scriptinghelpers.org/questions/116285/… 【参考方案1】:如果维护元素层次结构很重要,请尝试调整背景框架和应用程序的ZIndex,以使两者不会为哪个出现在顶部而争吵。 ZIndex 数字较小的元素将首先呈现,这意味着它们将出现在具有较大数字的元素之后。
function module.create_background(env)
local Frame = Instance.new('Frame',env)
Frame.ZIndex = 1
-- <a bunch of other code>
return Frame
end
然后让应用的 ZIndex 更高。
function module.create_app(env)
local frame = Instance.new('Frame', env)
frame.ZIndex = 2
-- <a bunch of other code>
return frame
end
但是你应该小心。使用 ZIndices 会很快变得非常混乱。更好的选择是将应用框架的父级设置为背景框架。
【讨论】:
您的代码适用于服务器端,但对于客户端它没有做之前没有显示之前所做的事情以上是关于当它应该出现时框架没有出现......(ROBLOX GUI)的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 分发失败并出现错误:框架未包含在正确命名的目录中。它应该在“框架”下[关闭]
vue的computed如果没有出现在模板里面,当它依赖的响应式属性发生变化,getter会触发吗?