完善滚动条控件
This commit is contained in:
parent
254d6856c2
commit
cd4e30774c
|
|
@ -15,6 +15,9 @@ class Yosin_DragButton extends Yosin_CommonUi {
|
||||||
//按钮
|
//按钮
|
||||||
Button = null;
|
Button = null;
|
||||||
|
|
||||||
|
//变动位置回调函数
|
||||||
|
OnChange = null;
|
||||||
|
|
||||||
//鼠标相对位置
|
//鼠标相对位置
|
||||||
M_Xpos = null;
|
M_Xpos = null;
|
||||||
M_Ypos = null;
|
M_Ypos = null;
|
||||||
|
|
@ -26,6 +29,8 @@ class Yosin_DragButton extends Yosin_CommonUi {
|
||||||
Max_Move_Value = 0;
|
Max_Move_Value = 0;
|
||||||
//移动值
|
//移动值
|
||||||
Move_Value = 0;
|
Move_Value = 0;
|
||||||
|
//侦测值
|
||||||
|
Detect_Value = 0;
|
||||||
|
|
||||||
constructor(X, Y, W, H, Path, Idx, Direction = true, UnavailableFlag = true) {
|
constructor(X, Y, W, H, Path, Idx, Direction = true, UnavailableFlag = true) {
|
||||||
this.Path = Path;
|
this.Path = Path;
|
||||||
|
|
@ -41,6 +46,7 @@ class Yosin_DragButton extends Yosin_CommonUi {
|
||||||
x = X,
|
x = X,
|
||||||
y = Y
|
y = Y
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//override
|
//override
|
||||||
|
|
@ -67,16 +73,28 @@ class Yosin_DragButton extends Yosin_CommonUi {
|
||||||
//左键拖动
|
//左键拖动
|
||||||
if (Direction) {
|
if (Direction) {
|
||||||
Move_Value = B_X + (MousePos_X - M_Xpos);
|
Move_Value = B_X + (MousePos_X - M_Xpos);
|
||||||
if (Move_Value >= (0 + BasePos.x) && Move_Value<(Max_Move_Value - Width + BasePos.x)) X = Move_Value;
|
if (!(Move_Value >= (0 + BasePos.x) && Move_Value <= (Max_Move_Value - Width + BasePos.x))) {
|
||||||
|
X = Move_Value;
|
||||||
|
DragLogic((Move_Value - Localtion_X).tofloat() / (Max_Move_Value - Width + BasePos.x - Localtion_X).tofloat());
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
Move_Value = B_Y + (MousePos_Y - M_Ypos);
|
Move_Value = B_Y + (MousePos_Y - M_Ypos);
|
||||||
if (Move_Value >= (0 + BasePos.y) && Move_Value<(Max_Move_Value - Height + BasePos.y)) Y = (Move_Value);
|
if (Move_Value >= (0 + BasePos.y) && Move_Value <= (Max_Move_Value - Height + BasePos.y)) {
|
||||||
|
Y = (Move_Value);
|
||||||
|
DragLogic((Move_Value - Localtion_Y).tofloat() / (Max_Move_Value - Height + BasePos.y - Localtion_Y).tofloat());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SyncPos(X, Y);
|
SyncPos(X, Y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//拖动逻辑
|
||||||
|
function DragLogic(Value) {
|
||||||
|
Detect_Value = Value;
|
||||||
|
if (OnChange) OnChange(Value);
|
||||||
|
}
|
||||||
|
|
||||||
//鼠标左键弹起回调
|
//鼠标左键弹起回调
|
||||||
function OnMouseLbUp(MousePos_X, MousePos_Y) {
|
function OnMouseLbUp(MousePos_X, MousePos_Y) {
|
||||||
base.OnMouseLbUp(MousePos_X, MousePos_Y);
|
base.OnMouseLbUp(MousePos_X, MousePos_Y);
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
创建日期:2024-12-13 23:17
|
创建日期:2024-12-13 23:17
|
||||||
文件用途:
|
文件用途:
|
||||||
*/
|
*/
|
||||||
//基础按钮
|
//滚动条
|
||||||
class Yosin_ScrollBar extends Yosin_CommonUi {
|
class Yosin_ScrollBar extends Yosin_CommonUi {
|
||||||
//控制器
|
//控制器
|
||||||
Controller = null;
|
Controller = null;
|
||||||
|
|
@ -19,6 +19,9 @@ class Yosin_ScrollBar extends Yosin_CommonUi {
|
||||||
//下按钮
|
//下按钮
|
||||||
DownButton = null;
|
DownButton = null;
|
||||||
|
|
||||||
|
//回调函数
|
||||||
|
OnChange = null;
|
||||||
|
|
||||||
//Path
|
//Path
|
||||||
Path = "sprite/interface/lenheartwindowcommon.img";
|
Path = "sprite/interface/lenheartwindowcommon.img";
|
||||||
|
|
||||||
|
|
@ -54,6 +57,11 @@ class Yosin_ScrollBar extends Yosin_CommonUi {
|
||||||
|
|
||||||
function Proc(Dt) {
|
function Proc(Dt) {
|
||||||
base.Proc(Dt);
|
base.Proc(Dt);
|
||||||
|
Controller.CurPos = ScrollButton.Detect_Value;
|
||||||
|
}
|
||||||
|
|
||||||
|
function SetChangeCallBack(Func) {
|
||||||
|
ScrollButton.OnChange = Func;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue