大多数开出很诱惑的条件,但一上网搜索就很多骗局,大多数工作在国内不合法转移到东南亚,当你办了签证,自己掏钱买机票(说去到能报销),下了飞机有人接你到一个地方培训,不准出去,人生路不熟、语言也不通,你也不敢出去。现在不管工作、生活、买卖的骗子太多了,建议小心谨慎。
//已经做好了,实测貌似没问题哦~~
//DrawFramejava (主程式,含程序入口);
import javaawt;
import javaawtevent;
import javaawtgeom;
import javaawtimageBufferedImage;
import javautil;
import javaxswing;
import javaxswingevent;
public class DrawFrame extends JFrame{
private static final long serialVersionUID = -6016640305196475801L;
private MyCanvas canvas;
private JPanel menuPanel;
private JButton enableDrawButton,resetButton,colorSelectButton;
private JColorChooser colorChooser;
private JDialog colorChooserDialog;
//构造函数,对组件进行初始化
public DrawFrame(){
super("Draw shape demo");
thisgetContentPane()setLayout(new BorderLayout());
thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
canvas= new MyCanvas();
enableDrawButton = new JButton("new");
resetButton = new JButton("reset");
colorSelectButton = new JButton("color");
enableDrawButtonsetBounds(10,4,68,20);
colorSelectButtonsetBounds(88,4,68,20);
resetButtonsetBounds(166,4,68,20);
menuPanel =new JPanel(null);
menuPanelsetPreferredSize(new Dimension(500,30));
menuPaneladd(enableDrawButton);
menuPaneladd(colorSelectButton);
menuPaneladd(resetButton);
colorChooser = new JColorChooser();
colorChooserDialog = new JDialog(this,"Color Selector");
colorChooserDialogsetSize(400,300);
colorChooserDialoggetContentPane()add(colorChooser);
initListeners();
thisadd(canvas);//将画布放入中央位置
thisadd(menuPanel,"South");//菜单放在底部
thissetSize(500,500);//窗口大小
thissetLocationRelativeTo(null);//初始位置在屏幕正中间
colorChooserDialogsetLocationRelativeTo(DrawFramethis);//初始的颜色选择器在窗口正中央
thissetVisible(true);
}
//给组件加入事件侦听器
private void initListeners() {
ActionListener l = new ActionListener(){
public void actionPerformed(ActionEvent e) {
Object o = egetSource();
if(oequals(enableDrawButton))
canvasenableDrawSomething();
else if(oequals(colorSelectButton)){
colorChooserDialogsetVisible(true);
}
else if(oequals(resetButton))
canvasreset();
}
};
enableDrawButtonaddActionListener(l);
colorSelectButtonaddActionListener(l);
resetButtonaddActionListener(l);
colorChoosergetSelectionModel()addChangeListener(new ChangeListener(){
public void stateChanged(ChangeEvent arg0) {
Color color = colorChoosergetColor();
canvasfillShape(color);
}
});
}
public static void main(String[] args) {
new DrawFrame();
}
}
/用户要求:
1500500窗口,鼠标进去背景是白色,出来背景是灰色
2下面3个按钮,new color reset
3点new 然后再点空白地方,可以 创造黑色的圆,最多造三个,第四个点下去不会发生任何事情
4点color会出来一个颜色的菜单,这个拿什么做都无所谓,有效果就行,选颜色,然后点已经有点圆 ,圆会渐变成那个颜色
5reset 一切归零
/
/
目前只能画正圆,在画好的圆上拖动鼠标能对它进行移动 *** 作,在任意的圆上点击都将选中这个圆
能对选中的圆进行填充颜色 *** 作,目前没有实现去色 *** 作(其实很简单),
鼠标移动到画布就会更改画布的背景色,进去是白色,出来是亮灰色(可自定 bgColor),
有图形数量限制,最多3个(可自定 total)
在LINUX下使用不会有兼容问题,但中文注释可能无法正常显示!(我可懒得去LINUX下写这个,呵呵)
/
class MyCanvas extends Canvas implements MouseListener,MouseMotionListener{
private static final long serialVersionUID = 14567890L;
private Color lineColor,bgColor;//边框色,背景色
private int total = 3;//最多可画3个图形
private boolean enableDraw;//允许作图
private ArrayList<SC> list;//图形包装类容器
private SC selectedSC;//被点选中的图形
private int x,y,w,h;//作图用的坐标,屏幕大小
private BufferedImage finalBuffer,tmpBuffer;//缓冲区图像
//构造函数
MyCanvas(){
thisw=getToolkit()getScreenSize()width;
thish=getToolkit()getScreenSize()height;
finalBuffer = new BufferedImage(w,h,BufferedImageTYPE_INT_ARGB);
tmpBuffer = new BufferedImage(w,h,BufferedImageTYPE_INT_ARGB);
list = new ArrayList<SC>();
lineColor = Colorblack;
bgColor=ColorLIGHT_GRAY;
thissetBackground(bgColor);
thisaddMouseListener(this);
thisaddMouseMotionListener(this);
}
//重写此方法,使画布在被破坏后能显示缓冲的内容
public void paint(Graphics g){
drawToFace();
}
public void mouseClicked(MouseEvent e) {}
//按指定颜色填充被选中的图形
public void fillShape(Color color) {
for(SC sc:list){
if(scisSelected){
sccolor=color;
scisFilled=true;
break;
}
}
drawArray();
drawToFace();
}
//复位画布
public void reset() {
enableDraw=false;
listclear();
bgColor=ColorLIGHT_GRAY;
thissetBackground(bgColor);
drawArray();
drawToFace();
}
//作图形关
public void enableDrawSomething() {
enableDraw=true;
}
//将全部内容画到画布上
private void drawBuff(int X,int Y){
createSC(X,Y);
drawArray();
drawToFace();
}
//创建SC对象实例,新建的SC对象默认是被选中的
private void createSC(int X,int Y) {
SC sc = new SC();
Point p = new Point(x,y);
Point2D p2 = new Point2DDouble(X,Y);
int dist = (int)pdistance(p2);
scx=x-dist;scy=y-dist;
scw=sch=dist2;
scshape=new Ellipse2DDouble(scx,scy,scw,sch);
listadd(sc);
}
//临时作画(拖动时的作画过程)
private void drawTmp(int X,int Y){
//画图形到缓冲区
Graphics g = tmpBuffergetGraphics();
gsetColor(Colorwhite);
gfillRect(0,0,w,h);
// drawArray();
gdrawImage(finalBuffer,0,0,null);//先画上以前已画过的图形
gsetColor(lineColor);
gdrawOval(x,y,0,0);
Point p = new Point(x,y);
Point2D p2 = new Point2DDouble(X,Y);
int dist = (int)pdistance(p2);
gdrawOval(x-dist,y-dist,dist2,dist2);
gdispose();
//画图形到画布
g = thisgetGraphics();
gdrawImage(tmpBuffer,0,0,null);
gdispose();
}
//将图形包装类容器中的内容画到缓冲区
private void drawArray() {
Collectionssort(list);//根据Z轴向值排序容器内容
Collectionsreverse(list);//反向使Z轴值大的先画,这样就能使Z轴值小的更靠近用户
Graphics2D g = finalBuffercreateGraphics();//建立缓冲区图形
gsetRenderingHint(RenderingHintsKEY_ANTIALIASING,RenderingHintsVALUE_ANTIALIAS_ON);//反锯齿设置
gsetColor(bgColor);
gfillRect(0,0,w,h);//填充背景
for(SC s:list){//开始画图
gsetColor(lineColor);
gdraw(sshape);//绘制图形外轮廓
if(sisFilled){//填充图形
gsetColor(scolor);
gfill(sshape);
}
}
gdispose();
}
//根据鼠标的出入来更改背景色(用户需要)
private void changeBgc(Color bgc){
thisbgColor=bgc;
drawArray();
drawToFace();
}
//将最终缓冲的内容印到画布
private void drawToFace(){
Graphics g = thisgetGraphics();
gdrawImage(finalBuffer,0,0,null);
gdispose();
}
//移动图形的 *** 作方法
private void moveSc(int X,int Y){
selectedSCx=X+selectedSCsx;
selectedSCy=Y+selectedSCsy;
Ellipse2D e2d = (Ellipse2D)selectedSCshape;
e2dsetFrame(selectedSCx,selectedSCy,selectedSCw,selectedSCh);
drawArray();
drawToFace();
}
public void mouseEntered(MouseEvent e) {changeBgc(Colorwhite);}
public void mouseExited(MouseEvent e) {changeBgc(ColorLIGHT_GRAY);}
//鼠标点击事件处理方法
public void mousePressed(MouseEvent e) {
if(!enableDraw)return;
thisx=egetX();
thisy=egetY();
selectedSC=null;
ArrayList<SC> tmp = new ArrayList<SC>();
for(SC s:list){
sisSelected=false;
if(sshapecontains(egetPoint())){
tmpadd(s);
}
}
Collectionssort(tmp);
for(SC s:tmp){
selectedSC = s;
ssx=sx-egetX();
ssy=sy-egetY();
szIndex=-1;
sisSelected=true;
break;
}
for(SC s:list){
szIndex++;
}
}
//鼠标释放事件处理方法
public void mouseReleased(MouseEvent e) {
if(!enableDraw)return;
if(selectedSC!=null){
drawArray();
drawToFace();
}
else if(listsize()<total)
drawBuff(egetX(),egetY());
}
//鼠标拖动事件处理方法
public void mouseDragged(MouseEvent arg0) {
if(!enableDraw){
JOptionPaneshowMessageDialog(this,"请先点击 \"new\" 按钮开始作画!","警告",JOptionPaneWARNING_MESSAGE);
return;
}
if(selectedSC!=null){
moveSc(arg0getX(),arg0getY());
}
else if(listsize()<total)
drawTmp(arg0getX(),arg0getY());
else JOptionPaneshowMessageDialog(this,"当前画布图像已达到了预设的数量,不能继续作画!","警告",JOptionPaneWARNING_MESSAGE);
}
public void mouseMoved(MouseEvent arg0) {}
}
//图形的包装类,保存图形的相关信息
class SC implements Comparable<SC>{
int x,y,w,h;//坐标和大小值
int sx,sy;//鼠标移动时产生的临时数据
Color color;//图形填充色
Shape shape;//图形
int zIndex;//Z轴的值,值越小越靠前
boolean isSelected=true;//选中状态指示值//默认是被选中的
boolean isFilled;//填充状态指示值
public int compareTo(SC sc) {//为排序比较用的方法
return zIndex-sczIndex;
}
}
对于Biome-BGC 42模型,Point BGC程序是在模型运行前需要编译的。如果你在官网下载的源代码中没有找到编译好的Point BGC可执行文件,你需要根据官方提供的编译说明来自行编译。以下是编译的大致步骤:
确保你已经安装了编译环境(如Cygwin或MinGW)以及相关的编译工具(如make)。
打开命令行界面(如Cygwin终端或Windows命令提示符),进入Biome-BGC源代码所在的目录。
运行以下命令,编译Point BGC程序:
make -f makefilepointbgc
等待编译过程完成。如果一切顺利,编译过程会生成名为“pointbgcexe”的可执行文件,它位于“/bin”目录下。
需要注意的是,编译过程可能会因 *** 作系统、编译环境等因素而有所差异,具体的编译步骤和命令可能会有所不同。在编译前,你可以查阅官方提供的文档和说明,了解更多细节。
[最佳答案] SGP abbrstatistics generation program 统计生成程序; Singapore 新加坡; statistics gathering program 统计收集程序; self-glucosylating protein 自我糖基化蛋白 双语例句 1 Signomial geometric programming ( SGP ) problems often occur in engineering design and management 符号几何规划 ( SGP ) 问题经常出现在工程设计和管理中 2 Objective To explore the clinical features of the specific granulomatous prostatitis ( SGP ) 目的探讨特异性肉芽肿性前列腺 炎 的临床特点
以上就是关于最近猎头招聘程序员去菲律宾马尼拉工作是骗人的吗公司叫global ted inc.全部的内容,包括:最近猎头招聘程序员去菲律宾马尼拉工作是骗人的吗公司叫global ted inc.、一个java程序,200分,拜托了,我这周考三门,真的没时间写了...、biome-bgc4.2中没有pointbgc.exe等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)