当前位置: 首页 > news >正文

风琴折叠图片效果网站南昌seo推广方式

风琴折叠图片效果网站,南昌seo推广方式,网页制作表格怎么做,推广普通话ppt以下是一个简单的图片浏览器示例代码#xff0c;它包含了图片放大缩小、拖拽、上一张/下一张查看等功能。你可以根据它进行扩展#xff0c;提高用户体验。 import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.e…以下是一个简单的图片浏览器示例代码它包含了图片放大缩小、拖拽、上一张/下一张查看等功能。你可以根据它进行扩展提高用户体验。 import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionAdapter; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException;import javax.imageio.ImageIO; import javax.swing.BorderFactory; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JSlider; import javax.swing.SwingConstants; import javax.swing.UIManager; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener;public class ImageViewer extends JFrame {private static final long serialVersionUID 1L;private JLabel imageLabel;private JScrollPane scrollPane;private BufferedImage image;private Dimension imageSize;private JPanel controlPanel;private JSlider zoomSlider;private JButton previousButton;private JButton nextButton;private int currentImageIndex 0;private String[] imagePaths {image1.jpg, image2.jpg, image3.jpg};private int zoomLevel 100; // Default zoom levelpublic ImageViewer() {setTitle(Image Viewer);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setPreferredSize(new Dimension(800, 600));setLayout(new BorderLayout());// Create image label and scroll paneimageLabel new JLabel();imageLabel.setHorizontalAlignment(SwingConstants.CENTER);scrollPane new JScrollPane(imageLabel);add(scrollPane, BorderLayout.CENTER);// Create control panelcontrolPanel new JPanel();controlPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));add(controlPanel, BorderLayout.SOUTH);// Create zoom sliderzoomSlider new JSlider(SwingConstants.HORIZONTAL, 50, 200, zoomLevel);zoomSlider.setMajorTickSpacing(50);zoomSlider.setMinorTickSpacing(10);zoomSlider.setPaintTicks(true);zoomSlider.setPaintLabels(true);zoomSlider.addChangeListener(new ChangeListener() {public void stateChanged(ChangeEvent e) {zoomLevel zoomSlider.getValue();updateImage();}});controlPanel.add(zoomSlider);// Create previous buttonpreviousButton new JButton(Previous);previousButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {if (currentImageIndex 0) {currentImageIndex--;loadImage();}}});controlPanel.add(previousButton);// Create next buttonnextButton new JButton(Next);nextButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {if (currentImageIndex imagePaths.length - 1) {currentImageIndex;loadImage();}}});controlPanel.add(nextButton);// Load the first imageloadImage();// Add mouse listeners to enable draggingimageLabel.addMouseListener(new MouseAdapter() {public void mousePressed(MouseEvent e) {imageLabel.setCursor(new java.awt.Cursor(java.awt.Cursor.MOVE_CURSOR));}public void mouseReleased(MouseEvent e) {imageLabel.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));}});imageLabel.addMouseMotionListener(new MouseMotionAdapter() {public void mouseDragged(MouseEvent e) {int dx e.getX() - (imageSize.width - scrollPane.getViewport().getWidth()) / 2;int dy e.getY() - (imageSize.height - scrollPane.getViewport().getHeight()) / 2;int newHValue scrollPane.getHorizontalScrollBar().getValue() - dx;int newVValue scrollPane.getVerticalScrollBar().getValue() - dy;if (newHValue 0)newHValue 0;if (newVValue 0)newVValue 0;if (newHValue scrollPane.getViewport().getWidth() imageSize.width)newHValue imageSize.width - scrollPane.getViewport().getWidth();if (newVValue scrollPane.getViewport().getHeight() imageSize.height)newVValue imageSize.height - scrollPane.getViewport().getHeight();scrollPane.getHorizontalScrollBar().setValue(newHValue);scrollPane.getVerticalScrollBar().setValue(newVValue);}});pack();setLocationRelativeTo(null);setVisible(true);}private void loadImage() {try {image ImageIO.read(new File(imagePaths[currentImageIndex]));imageSize new Dimension(image.getWidth(), image.getHeight());updateImage();} catch (IOException e) {JOptionPane.showMessageDialog(this, Error loading image: e.getMessage(), Error, JOptionPane.ERROR_MESSAGE);}}private void updateImage() {int newWidth (int) (imageSize.width * zoomLevel / 100.0);int newHeight (int) (imageSize.height * zoomLevel / 100.0);BufferedImage scaledImage new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);scaledImage.getGraphics().drawImage(image, 0, 0, newWidth, newHeight, null);imageLabel.setIcon(new ImageIcon(scaledImage));}public static void main(String[] args) {try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());} catch (Exception e) {// Ignore}new ImageViewer();}}运行效果如下
http://www.dnsts.com.cn/news/228899.html

相关文章:

  • 如何制作安卓app泉州优化怎么做搜索
  • 个人网站备案涉及支付宝南昌公司网站建设公司
  • 手机号码定位网站开发内江市住房和城乡建设局网站电话号码
  • 商业网站和企业网站的区别门户网站简单模板
  • 全屏网站宽度缪斯设计网站
  • 网站建设实训的意义怎么做外贸网站需注意哪些
  • 手机屏幕网站机械加工网厂
  • 国外网页网站重庆颐众达网站
  • 视频作为网站背景wordpress主循环
  • 苏州建设工程合同备案网站江苏提升关键词排名收费
  • wordpress翻页什么是网站建设与优化
  • 新民电商网站建设价格咨询wordpress加入博客
  • 中国做网站的公司有哪些优化网络培训
  • 网站找哪家做较好定制网站建设公司价格
  • 免费建手机网站的软件单页导航网站模板
  • 南通企业网站seo宁海企业网站建设
  • 网站内容描述网站制作开发策划
  • 购物网站策划书四川省采购一体化平台
  • 做童车外贸上哪个网站中国寰球工程公司
  • 温州做网站哪里好网址升级中
  • 做百度百科的网站做网站的广告
  • 东莞凤岗网站建设怎样进入公众号
  • 网站导航菜单设计产品如何做网络推广
  • 彩票网站开发是否合法足球门户网站建设
  • 案例应聘网络营销做网站推广iis 网站没有上传权限
  • 网站建设及目标做中英文网站公司
  • 新密做网站推广企业所得税计算公式2022
  • 怎么做公司网站竞价网站开发前台实训
  • 甘肃建设厅网站美观网站建设价格
  • 企业网站托管外包平台厦门seo排名外包