如何从两个按钮上点击从MySQL数据库检索记录?点击按钮(NEXT/PREVIOUS)从MySQL DB中检索记录
- 如果用户点击NEXT按钮,它应该只在各种
JLabel
上显示第一个/下一个记录的行内容。 - 如果用户点击PREVIOUS按钮,它应该只显示前一个记录。
- 如果用户到达最后一条记录,则应禁用NEXT按钮。
- 同样,如果用户在第一个记录,则应该禁用PREVIOUS按钮。只有当用户可以移动到上一条记录时才能启用它。
如何从两个按钮上点击从MySQL数据库检索记录?点击按钮(NEXT/PREVIOUS)从MySQL DB中检索记录
JLabel
上显示第一个/下一个记录的行内容。的解决方案是: -
public void actionPerformed(ActionEvent evt) {
//HERE next and pre are Button name;
//rs is REsultSet
if (evt.getSource()==next)
{
try {
if (rs.next())
{
if(rs.isLast())
{
pre.setEnabled(true);
next.setEnabled(false);
}
//do action
}
} catch (SQLException ex) {
Logger.getLogger(DeleteQ.class.getName()).log(Level.SEVERE, null, ex);
}
}
else if (evt.getSource() == pre)
{
try {
if(rs.previous())
{
if(rs.isFirst())
{
pre.setEnabled(false);
next.setEnabled(true);
}
//do action
}
} catch (SQLException ex)
{
Logger.getLogger(DeleteQ.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
@pageSize
和@pageIndex
参数。您可以阅读有关分页存储过程here。我没有这样做的摆动,我已经完成了ASP.NET和SQL管理工作室,这就是为什么我只发布链接的概念。希望这些信息是有帮助的。
谢谢你的帮助,但我已经看到一个代码很久,我无法回忆。只有使用ResultSet对象,我们可以获得这个功能,但我无法得到它。 ResultSet对象具有各种功能,但我无法开发如何使用它们来实现所需功能的逻辑。 –
你必须自己实现的行为,通过使用ResultSet中陈述的方法,在这种情况下,next()和以前的()方法
方法retruns指示是否有一个或下一个记录的布尔值,你可以用它来启用和禁用按钮
看看这个链接,说明如何使用JDBC声明
http://docs.oracle.com/javase/tutorial/jdbc/basics/processingsqlstatements.html
假设nextBtn和PreviousBtn是我们需要两个变量(hasNext和hasPrevious)来保存我们的按钮的状态,你可以参考下面的代码片段,你必须适应你的情况,它不会直接工作。
private boolean hasNext = false;
private boolean hasPrevious = false;
public void updateBtnState() {
nextBtn.setEnabled(hasNext);
previousBtn.setEnabled(hasPrevious);
}
previousBtn = new JButton(" Previous <<");
previousBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
hasPrevious = res.previous();
if (hasPrevious) hasNext = true;
// do something
updateBtnState();
}
});
nextBtn = new JButton(" Next >>");
nextBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
hasNext = res.next();
if (hasNext) hasPrevious = true;
// do something
updateBtnState();
}
});
谢谢你会尝试。 –
我添加了一段代码,您可以适应您的情况 –
thanx现在工作。 –
我只想要一个逻辑如何在MySQL数据库中上下移动动态。代码太长,它被分成模块。 –
问题是好的,一旦我建立解决方案,我也发布了相关的代码。之前也提过类似的问题,但解决方案过于复杂。 –