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

网站右侧二维码代码html小清新类型网站

网站右侧二维码代码,html小清新类型网站,搭建电商分销系统,html网站地图模板工作中经常有复制的诉求,当多次复制的时候,去找之前复制的内容就比较麻烦。市面上的要不是不好用,要不是就是不免费。于是打算手搓一个记录复制记录的软件,方便快速找到之前复制内容,效果还是很不错。直接贴代码 下面是…

工作中经常有复制的诉求,当多次复制的时候,去找之前复制的内容就比较麻烦。市面上的要不是不好用,要不是就是不免费。于是打算手搓一个记录复制记录的软件,方便快速找到之前复制内容,效果还是很不错。直接贴代码
下面是完整版代码:


import javax.swing.*;
import java.awt.*;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.LinkedList;
import java.util.concurrent.TimeUnit;public class ClipboardHistory extends JFrame {private static final int MAX_HISTORY = 100;private final DefaultListModel<String> listModel = new DefaultListModel<>();private final LinkedList<String> history = new LinkedList<>();private final JList<String> historyList = new JList<>(listModel);public ClipboardHistory() {setTitle("剪贴板历史记录器");setDefaultCloseOperation(EXIT_ON_CLOSE);setSize(500, 400);setLocationRelativeTo(null);JScrollPane scrollPane = new JScrollPane(historyList);JButton copyBtn = new JButton("复制到剪贴板");copyBtn.addActionListener(e -> copySelectedToClipboard());JButton deleteBtn = new JButton("删除选中内容");deleteBtn.addActionListener(e -> deleteSelectedItem());JPanel btnPanel = new JPanel();btnPanel.add(copyBtn);btnPanel.add(deleteBtn);JPanel panel = new JPanel(new BorderLayout());panel.add(scrollPane, BorderLayout.CENTER);panel.add(btnPanel, BorderLayout.SOUTH);add(panel);// 鼠标双击复制historyList.addMouseListener(new MouseAdapter() {@Overridepublic void mouseClicked(MouseEvent evt) {if (evt.getClickCount() == 2) {copySelectedToClipboard();}}});// 剪贴板监听线程new Thread(this::watchClipboard).start();}private void watchClipboard() {Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();Transferable prev = null;while (true) {try {Transferable curr = clipboard.getContents(null);if (curr != null && curr.isDataFlavorSupported(DataFlavor.stringFlavor)) {String data = (String) curr.getTransferData(DataFlavor.stringFlavor);if (!data.trim().isEmpty() && (prev == null || !data.equals(getTransferableString(prev)))) {addHistory(data);prev = curr;}}TimeUnit.MILLISECONDS.sleep(500);} catch (Exception e) {// 忽略异常}}}private String getTransferableString(Transferable t) {try {return t != null && t.isDataFlavorSupported(DataFlavor.stringFlavor)? (String) t.getTransferData(DataFlavor.stringFlavor) : null;} catch (Exception e) {return null;}}private void addHistory(String text) {SwingUtilities.invokeLater(() -> {if (history.contains(text)) {return; }// 去重history.addFirst(text);if (history.size() > MAX_HISTORY) {history.removeLast();}refreshList();});}private void refreshList() {listModel.clear();for (String s : history){ listModel.addElement(s);}}private void copySelectedToClipboard() {String selected = historyList.getSelectedValue();if (selected != null) {StringSelection sel = new StringSelection(selected);Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sel, null);}}private void deleteSelectedItem() {int idx = historyList.getSelectedIndex();if (idx >= 0) {String item = listModel.getElementAt(idx);history.remove(item);refreshList();// 维持选择状态if (idx < listModel.size()) {historyList.setSelectedIndex(idx);} else if (!listModel.isEmpty()) {historyList.setSelectedIndex(listModel.size() - 1);}}}public static void main(String[] args) {SwingUtilities.invokeLater(() -> new ClipboardHistory().setVisible(true));}
}

主要功能说明:

  • 可以自动记录前100条(可以自行调整)复制时的内容,去重的。
  • 可以“删除选中内容”
  • 可以复制选择的内容

如何使用
1.创建一个Java 文件,然后直接复制上面代码,直接在idea运行就行。文件名称要和ClipboardHistory一样,当然你也可以同时修改名称。
2.打包后在classpath的目录直接执行nohup java -cp . com.example.demo.tool.ClipboardHistory > app.log 2>&1 & 这样就可以后台一直运行,直到你关机。

效果如下
在这里插入图片描述


文章转载自:

http://rfoKsjKj.pmbcr.cn
http://kBHMEQy0.pmbcr.cn
http://QYfcZ3yO.pmbcr.cn
http://zgzfCLRb.pmbcr.cn
http://s4GtRDbr.pmbcr.cn
http://L4IDnWEE.pmbcr.cn
http://O33Du5nw.pmbcr.cn
http://5SqzC65V.pmbcr.cn
http://Y1m4TyQP.pmbcr.cn
http://aSpRQpBR.pmbcr.cn
http://BBvYytKG.pmbcr.cn
http://M4x8KyAs.pmbcr.cn
http://1ueDJa2q.pmbcr.cn
http://QQfZmgDM.pmbcr.cn
http://eqzN5Nxv.pmbcr.cn
http://9ZfVCfOU.pmbcr.cn
http://EwUbgHlC.pmbcr.cn
http://cFeV3Ia9.pmbcr.cn
http://LIgw0I72.pmbcr.cn
http://oOnw4jz6.pmbcr.cn
http://0vUh507T.pmbcr.cn
http://0R96DHsl.pmbcr.cn
http://kFcWYHTx.pmbcr.cn
http://dQLS75ss.pmbcr.cn
http://SrzKpfUs.pmbcr.cn
http://4OC2u92o.pmbcr.cn
http://JbAVkfh7.pmbcr.cn
http://JVZKZRcT.pmbcr.cn
http://z1kBZOTZ.pmbcr.cn
http://erfhkMY1.pmbcr.cn
http://www.dtcms.com/wzjs/743771.html

相关文章:

  • 长安镇网站建设重庆网站推广大全
  • 网站设计有创意的主题潍坊美丽乡村建设一般发了哪个网站
  • wordpress有多少网站营销自动化系统
  • 农产品网站建设计划书iis默认网站怎么设置
  • 贵州城乡住房建设厅网站网站如何做微信支付宝支付宝支付
  • 怎么优化网站源代码成都百度推广效果
  • 现在学做网站赚钱吗网架加工多少钱一吨
  • 模板网站和定制网站后缀的区别深圳住房和建设局网站办事跟踪
  • 钢管网站模板网站设计公司杭州
  • 潍坊手机网站网站开发需要的技术
  • 女与男爱做电影网站免费下载重庆网站页设计制作
  • 个人搭建网站要多少钱内容营销案例
  • 建设银行深圳天健世纪支行网站合肥工大建设监理有限公司网站
  • 烟台城乡建设局官方信息网站网页设计实训总结三百字
  • 网站建设外包公司招聘软件项目报价
  • 顺的品牌网站设计信息网站设计分析报告
  • 重庆放心seo整站优化做网站如何找广告商
  • 信息课做网站的软件关于网站建设培训
  • 怎么写公司网站的文案台州做企业网站
  • 富阳网站建设怎样德语网站建设注意事项
  • 北京市建设局网站首页网站目标人群
  • 网站横幅广告怎么做福建省建设监理公司网站
  • 凡客网站可以建设会员系统吗刚做网站做多用户还是单用户
  • 成都电商网站高端大气企业网站
  • 自己做的网站可以有多个前端吗华为云虚拟主机
  • 北京营销网站建设公司app十大免费下载排行榜
  • 旅行社网站规划与建设老版本网站开发工具
  • 木材模板.网站怎样免费建立自己的网站
  • 刚成立的公司怎样做自己网站wordpress展示图片不显示
  • 理财 网站模板 html手机网页及网站设计 pdf