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

建行移动门户网站首页太原免费网站建站模板

建行移动门户网站首页,太原免费网站建站模板,危险网站怎么解除,精品网站制作公司以下是一个简单的图片浏览器示例代码,它包含了图片放大缩小、拖拽、上一张/下一张查看等功能。你可以根据它进行扩展,提高用户体验。 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.dt0577.cn/news/38666.html

相关文章:

  • 网站服务器崩溃腾讯企业qq官网
  • 如何在阿里云建设网站口碑营销5t
  • wordpress网站案例西安网站关键词排名
  • 做网站建专业郑州企业网站建设
  • 网站建设与管理需要什么软件有哪些内容代写文案的软件
  • 网站备案代码南昌网站优化公司
  • wordpress公众号管理网站关键词优化排名推荐
  • 汽车图片查询网站源码企业网站优化工具
  • 湛江有哪些网站建设公司兰州seo关键词优化
  • 日本三线和韩国三线品牌对比宁波seo快速优化教程
  • 哈尔滨市工程建设信息网seo需要会什么
  • 威海网站建设联系方式百度网页提交入口
  • 网站的要素是什么意思qq代刷网站推广
  • 优服优科网站建设公司优化大师电脑版官网
  • 策划营销有限公司seo关键词选取工具
  • 主流的网站建设软件网站创建
  • 做网站啦代理的方法公司网站页面设计
  • 百度智能建站适合优化吗黄山搜索引擎优化
  • 本地主机做网站服务器搜索推广出价多少合适
  • 湖北商城网站建设多少钱广州seo和网络推广
  • 西宁公司网站设计今天nba新闻最新消息
  • 广东网站建设多少钱免费推广链接
  • 今天重大新闻摘抄宁波seo推荐优化
  • 中山建网站公司小说排行榜
  • 创世网站网络建设如何进行线上推广
  • google网站排名ue5培训机构哪家强
  • 手机网站用什么软件做的在线推广企业网站的方法有哪些
  • 网络教育室内设计专业东莞百度seo电话
  • 企业网站建设流程图百度竞价渠道户
  • 银川网站建设实习生h5网站制作平台