求助:移动光标后的对象左对齐到光标处,如何返回选择刚刚操作的对象并把光标移动到对象的结尾处?

问题详情

求助:移动光标后的对象左对齐到光标处,如何返回选择刚刚操作的对象并把光标移动到对象的结尾处?
求大神指点!万分感谢

社区内找到的移动光标后的对象左对齐到光标处源码如下:

function Msg(value)
  reaper.ShowConsoleMsg(tostring(value) .. "\n")
end

EditCurPos = reaper.GetCursorPosition()
Track = reaper.GetSelectedTrack(0,0)
for var=0, reaper.GetTrackNumMediaItems(Track)-1, 1 do
  item = reaper.GetTrackMediaItem(Track, var)
  itemPos = reaper.GetMediaItemInfo_Value(item, "D_POSITION")
  if(itemPos > EditCurPos)
  then
    if(reaper.GetMediaItemInfo_Value(item, "C_LOCK") == 0)
    then
      reaper.SetMediaItemInfo_Value(item, "D_POSITION", EditCurPos)
    end
    break
  end
end

reaper.Undo_BeginBlock()
reaper.Undo_EndBlock("移动后方对象到编辑光标", -1)

加了2行代码,试试
TEST.lua (723 字节)

1 个赞

如果不一定要脚本,也可以灵活使用 custom action。

  • Xenakios/SWS: Select items under edit cursor on selected tracks
  • Item navigation: Move cursor to end of items

完美运行,感谢了!

感谢大家的指点,和当归蛋大神的编译,程序完美运行,脚本已上传,分享大家一起使用! :grinning:借花献佛了

在有多个item被选中的情况下,会出现光标移位不准确,我修改了代码,用新的吧。
TEST 2.lua (797 字节)

2 个赞

严禁,我去在测试一下