溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Matlab中自帶的Java操作是什么

發(fā)布時(shí)間:2023-05-04 11:48:55 來(lái)源:億速云 閱讀:210 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹“Matlab中自帶的Java操作是什么”,在日常操作中,相信很多人在Matlab中自帶的Java操作是什么問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Matlab中自帶的Java操作是什么”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

1 獲取鼠標(biāo)在全屏位置

屏幕左上角為坐標(biāo)原點(diǎn),獲取鼠標(biāo)位置和獲取鼠標(biāo)像素顏色建議和while循環(huán)或者timer函數(shù)結(jié)合使用:

import java.awt.MouseInfo;
mousepoint=MouseInfo.getPointerInfo().getLocation();
mousepoint=[mousepoint.x,mousepoint.y]

2 獲取當(dāng)前剪切板內(nèi)容

import java.awt.Toolkit
import java.awt.datatransfer.DataFlavor
clip=Toolkit.getDefaultToolkit().getSystemClipboard();

clipTf=clip.getContents([]);
clipContent=clipTf.getTransferData(DataFlavor.stringFlavor)

3 內(nèi)容復(fù)制到剪切板

import java.awt.Toolkit;
import java.awt.datatransfer.StringSelection;
clip=Toolkit.getDefaultToolkit().getSystemClipboard();

contentStr='歡迎關(guān)注slandarer隨筆';

tText=StringSelection(contentStr);
clip.setContents(tText,[]);

4 獲取鼠標(biāo)處像素顏色

需要和獲取鼠標(biāo)位置的函數(shù)結(jié)合。

import java.awt.MouseInfo;
import java.awt.Robot;
robot=Robot();

mousepoint=MouseInfo.getPointerInfo().getLocation();
tempColor=robot.getPixelColor(mousepoint.x, mousepoint.y);
RGBColor=[tempColor.getRed(),tempColor.getGreen(),tempColor.getBlue()]

5 獲取屏幕截圖

import java.awt.Robot;
import java.awt.Rectangle;
robot=Robot();
rectangle=Rectangle();

screensize=get(0,'screensize');
screensize=1.5*screensize;
rectangle.x=0;
rectangle.y=0;
rectangle.width=screensize(3);
rectangle.height=screensize(4);

image=robot.createScreenCapture(rectangle);
data=image.getData();
temp=zeros(screensize(3)*screensize(4)*3,1);
temp=data.getPixels(0,0,screensize(3),screensize(4),temp);
temp=uint8(temp);
R=temp(1:3:end);
G=temp(2:3:end);
B=temp(3:3:end);
R=reshape(R,[screensize(3),screensize(4)]);
G=reshape(G,[screensize(3),screensize(4)]);
B=reshape(B,[screensize(3),screensize(4)]);
R=R';G=G';B=B';
ima=cat(3,R,G,B);

imshow(ima)

6 創(chuàng)建java窗口(并使其永遠(yuǎn)在最上方)

import java.awt.Frame;
import java.awt.Point;

frame=Frame();

% 設(shè)置java窗口大小
frame.setSize(400,300)
% 設(shè)置java窗口位置
point=Point(300,200);
frame.setLocation(point)

% 使其永遠(yuǎn)在最上方
frame.setAlwaysOnTop(true);

% 設(shè)置窗口關(guān)閉回調(diào)(不設(shè)置的話(huà)java frame將無(wú)法關(guān)閉)
hjWindow=handle(frame,'CallbackProperties');
set(hjWindow,'WindowClosingCallback',@(h,e)frame.dispose());

% 顯示java窗口
frame.setVisible(true)

7 透明窗口

import java.awt.Frame;
import java.awt.Point;
import java.awt.Button;
import java.awt.Font;


frame=Frame();

% 設(shè)置java窗口大小
frame.setSize(400,200)
% 設(shè)置java窗口位置
point=Point(50,400);
frame.setLocation(point)

% 因?yàn)橐罁?jù)數(shù)值設(shè)置按鈕位置,因此setLayout(NULL)
frame.setLayout([]);

bt1=Button("點(diǎn)我試試");
bt2=Button("關(guān)閉窗口");

% 設(shè)置點(diǎn)擊事件
hbt1=handle(bt1,'CallbackProperties');
set(hbt1,'MousePressedCallback',@(h,e)disp('歡迎關(guān)注公眾號(hào)slandarer隨筆'))

hbt2=handle(bt2,'CallbackProperties');
set(hbt2,'MousePressedCallback',@(h,e)frame.dispose())

% 設(shè)置按鈕字體及字號(hào)
mf=Font('宋體',Font.BOLD,25);
bt1.setFont(mf)
bt2.setFont(mf)

% 設(shè)置按鈕位置
bt1.setLocation(30,30);
bt1.setSize(140,140);
bt2.setLocation(220,30);
bt2.setSize(140,140);

% 添加按鈕
frame.add(bt1);
frame.add(bt2);

% 取消邊框并設(shè)置透明度
frame.setUndecorated(true);
frame.setOpacity(.7);

% 設(shè)置窗口關(guān)閉回調(diào)
hjWindow=handle(frame, 'CallbackProperties');
set(hjWindow, 'WindowClosingCallback', @(h,e)frame.dispose());

% 顯示java窗口
frame.setVisible(true)

Matlab中自帶的Java操作是什么

到此,關(guān)于“Matlab中自帶的Java操作是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI