我想做一件简单的事情,但我没有任何想法。我在 GUI 状态下制作了一个按钮,它有一个功能键,它可以工作。现在是真事。我希望为我标记的每个复选框,当我按下按钮调用一个新屏幕以仅显示已检查的条目时。
该复选框已添加到 itable 中,但我认为这并不重要。如何告诉按钮屏幕上哪些复选框被选中?
答案与伯纳德所说的差不多,尽管缺少一些细节。
你需要知道你写了多少行,它存储在 SY-LINNO 中,注意你还需要考虑你输出了多少页存储在 SY-PAGNO 中,以及一个页面上有多少行是存储在 SY-LINCT 中。
您可以使用“DESCRIBE LIST”获取该信息,这可能是一种更好的方法。
然后对于使用“READ LINE”命令的每一行,您可以找到复选框的值。
READ LINE line OF PAGE page [result].
从那里开始,事情应该是小菜一碟。
对于选中的记录,复选框字段是'X',而对于未选中的记录,复选框字段是空格('')。因此,您需要遍历屏幕上的记录,然后仅显示复选框等于“X”的记录。
除了您已经得到的所有答案之外,您不想更深入地研究交互式列表编程(除非您必须为编程练习这样做)。查看ALV 对象模型文档和 SALV_DEMO_* 示例程序。