刚刚接触爬虫的同学常会遇到这样的疑问: 为什么网页上面有的信息,我用代码抓下来的里面就没有,也没有报错?...除开请求本身失败或被反爬的情况外,通常这种问题的原因其实是: 页面上本来就没有你要的内容! 那么网页上的内容是哪里来的?...现在绝大多数网站的内容并非直接通过你访问的 URL 请求直接返回,而是会通过一种叫做 AJAX 的方法,在页面的基本框架加载完毕后,再通过其他的请求向后台服务器再次请求获取的。...具体细节我不展开了,你可以网上去按我给到的关键字去搜索相关内容,下次我也会专门发下这方面的讲解文章。 那开发者工具里为什么又会在代码里显示出这些内容呢?...这是因为开发者工具的元素(Elements)项显示的并不是网页的原始代码,而是浏览器将页面加载并渲染后的结果,它里面包含了异步请求拿到的数据和前台JS代码执行后对页面内容的修改。
Java Swing的基础 首先需要注意的就是JFrame这个类,如果在main类整直接new一个出来是没有任何的变化,需要设置一个setvisible为true来显示出来。...); this.setVisible(true); } 这是一个标准的模板,设置窗口大小不可重新改变,关闭窗口时整个程序同时关闭。...JFrame是最上层的一个窗口,如果要绘制的话是不可以在窗口本身绘制的。MenuBar就是最大化最小化关闭等等的操作。...Content Pane其实是一个容器,可以装载其他的组件,最常用的就是面板,Jpanel就是一个面板,后面的绘制都会画在Jpanel上。也就是说想要画上东西就需要在Jframe上加入Jpanel。...这个时候窗口大小和画布大小就是两个不一样的大小了,如果想要窗口大小自适应画布大小,就可以调用pack这个函数自适应。 绘制 在Jpanel类里面有一个paintComponent方法,这个方法
添加标签组件: 先构建一个窗口对象,使用setLayout();方法把布局设置为null,用setBounds();方法将窗口的位置坐标设置好,记得setVisibel();显示窗口方法尽量写在代码的最后面一句...设置之后窗口就会一直在其他窗口的上面显示 去除窗口边框: setUndecorated();方法,写true就是除去窗口的边框, false则反之: ? 运行效果: ?...显示出来就是没有边框的窗口 使窗口不能伸缩: setResizable();方法,写false就是令窗口不能伸缩, 将尺寸定死,true则反之: ? 运行效果: ?...设置窗口对象的默认关闭方式: setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 直接关闭虚拟机 setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE...); 隐藏关闭,对象不会销毁 setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 销毁对象关闭 窗口标题: setTitle();方法,可以设置窗口的标题
.*; 5 6 public class WindowMess extends JFrame implements ActionListener 7 { 8 JTextField inputEnglish...String args[]) 5 { 6 WindowMess win = new WindowMess(); 7 win.setTitle("带消息对话框的窗口...,其中参数component 指定颜色对话框可见时的位置,颜色对话框在参数,component 指定的组件的正前方显示出来,如果component为null,颜色对话框在屏幕的正前方显示出来。...title指定对话框的标题,initialColor指定颜色对话框返回的初始值。...void main(String args[]) 5 { 6 WindowColor win = new WindowColor(); 7 win.setTitle("带颜色对话框的窗口
1、swing窗口和面板容器 窗口:(JFrame) 这里是类继承【JFrame】,然后完成基本设置,一定要显示true,不然看不见。...创建一个标签 JLabel lable=new JLabel("lable就是一个文本"); //获取本窗口的内容窗格 Container c=getContentPane(); //将...getComponentAtIndex(int i) 返回指定索引位置的组件 getComponentIndex(Component c) 返回指定组件的索引 getMargin() 返回工具栏边框和它的按钮之间的空白...setMargin(Insets m) 设置工具栏边框和它的按钮之间的空白 setOrientation(int o) 设置工具栏的方向 setRollover(boolean rollover) 设置此工具栏的...本文虽然没有写数据库操作,但是后面会有一篇图形化框架的操作,我会在那一篇文章里搞定的。
; import javax.swing.Timer; public class HideFrame extends JFrame implements ActionListener{ private...frameTop < 0 && frameLeft < 0) && isPtInRect(rect, point)) {// 窗体在左上角; setLocation(0, 0);// 窗口隐藏了...,鼠标指到他,就显示出来; } else if ((frameTop > -5 && frameTop -5 && frameLeft < 5) &&...); } else if ((frameTop < 0) && isPtInRect(rect, point)) { setLocation(frameLeft, 0);// 窗口隐藏了...,鼠标指到他,就显示出来; } else if (frameTop > -5 && frameTop < 5 && !
//java Swing学习 //生成窗口 JFrame windows1=new JFrame("窗口1"); JFrame windows2...=new JFrame("窗口2"); Container container1=windows1.getContentPane();//获得这个窗口的内容面板 container1...Icon:代表图标,使用new ImgeIcon(“文件路径”);//使用绝对路径,这里由于是linux所以没有盘符 常用函数 JFrame: setJMenuBar(JMenuBar menuBar...的类中,JFrame叫做底层容器,然而在实际开发和为了更好的使用【例如实现同一个窗口切换选项卡有不同的面板】 这些组件并不是直接添加在底层容器。...就此,界面的相关内容介绍的差不多了。
Main.java package myCalculator; import javax.swing.JFrame; public class Main { public static void...main(String[] args) { MyFrame frame = new MyFrame();//创建窗口 frame.setTitle("计算器");//设置窗口标题...frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true);//显示出来...frame.setLocationRelativeTo(null);//将窗口显示在屏幕中间 } } MyFrame.java package myCalculator; import...javax.swing.JFrame; public class MyFrame extends JFrame{ public MyFrame() { add(new MyPanel
JFrame窗体的默认布局管理器是边界布局管理器,在使用之前应该先使用setLayout(null)取消该布局管理器。 Hello!大家好,我是灰小猿! ?...这就很疑惑了,明明给控件设置了坐标以及长宽,为什么在显示的时候还是会布满整个窗体? ?...但是意外又来了,在我添加了setLayout(null)之后,发现界面仍然没有变化,如下所示, ? 这就很奇怪了,明明已经取消了边界布局管理器,为什么在设置了控件之后还是没有效果? ?...经过仔细研究发现,是显示窗体可见的代码setVisible(true);放在了取消布局管理器代码的前面,这就造成了窗体先显示出来,然后才取消了边界布局,这样导致了setLayout(null)就没有了意义...在这里需要注意的就是: JFrame窗体的默认布局管理器是边界布局管理器,在使用之前应该先使用setLayout(null)取消该布局管理器,同时,应该在设置好之后,最后再设置setVisible(true
Java Swing的基础 首先需要注意的就是JFrame这个类,如果在main类整直接new一个出来是没有任何的变化,需要设置一个setvisible为true来显示出来。...); this.setVisible(true); } 这是一个标准的模板,设置窗口大小不可重新改变,关闭窗口时整个程序同时关闭。...JFrame是最上层的一个窗口,如果要绘制的话是不可以在窗口本身绘制的。MenuBar就是最大化最小化关闭等等的操作。...这个时候窗口大小和画布大小就是两个不一样的大小了,如果想要窗口大小自适应画布大小,就可以调用pack这个函数自适应。...但其实如果是仅仅在2D图像上画其实可以使用Graphic2D来画,把Graphic转换成Graphic2D就好了,而paintComponent是没有2D的这个参数的。
JComboBox组合框组件分为可编辑和不可编辑两种形式,对于不可编辑的组合框,用户只能在现有选项列表中进行选择,对于可编辑的组合框,用户可以自己输入新的内容,也可以在现有选项中选择。...JComboBox类的常用方法 方法声明 功能描述 public JComboBox() 创建一个没有可选项的组合框 public JComboBox(Object[] items) 创建包含指定数组中的元素的...jFrame = new JFrame("JFrame窗口"); // 创建JFrame窗体 6 JComboBox jComboBox= new JComboBox(); //...例12-9运行结果(单击组合框) 图12.11中,运行程序弹出JFrame窗口,窗口中有下拉列表,列表中有四个选项,先创建JFrame窗体,在构造方法中初始化窗体,将下拉框及其选项都添加进去,用户可以单击组合框进行选择...例12-10运行结果 图12.12中,运行程序先创建了JFrame窗体,然后创建了JTextField文本框对象并设置内容为“AAA软件教育”,将文本框添加到JFrame窗体,接着创建一个按钮,将其添加到
设置为非透明 // 将JLabel添加到JFrame窗口中 frame.getContentPane().add(l1); // 显示窗口...JTextArea的构造方法 JTextArea的构造方法有多个重载形式,以下是其中的一些常用构造方法: JTextArea(): 创建一个默认的JTextArea对象,没有文本内容。...JTextArea(int rows, int columns): 创建一个具有指定行数和列数的JTextArea对象,但没有文本内容。...实例 JFrame frame = new JFrame("ComboBox Example"); // 设置窗口的宽高 frame.setSize(300...整个界面使用JPanel来组织,并且使用了JFrame作为窗口容器。
BoxLayout布局管理器,这种布局方式是在行或列中楞放组件.如果沿用水平方向排列组件,当组件的总宽度超出容器的宽度时,组件不会换行,而是继续沿同一行排列组件。...如果采用竖直方向排列组件的方式,当组件的总高度超出容器的高度时,组件也不会换列,而是沿同列继续排列组件。 这时需要改变容的大小才能看到所有的组件,即有些组件可能处于不可见状态。...对象 6 JFrame jFrame = new JFrame("JFrame窗口下的BoxLayout布局管理器"); 7 //获取窗口jFrame的内容窗格 8...(JFrame.EXIT_ON_CLOSE); 21 } 22} 例12-22运行结果左图为X_AXIS设置右图为BoxLayout.Y_AXIS设置 如图12.23,程序的运行结果创建了一个...BoxLayout对象boxLayout,指定目标容器为窗口对象jFrame的内容窗格。
通常为JFrame的实例选择带一个字符串的构造方法,不带参数的构造方法将产生没有标题的窗体。 ...通常,这需要重载事件处理方法,需要简单地隐藏窗口或隐藏窗口并清除其本地资源。而Swing通过把一个缺省关闭操作与每一个JFrame实例相关联来使窗口的关闭事件较容易处理。...━━━ 如果没有显式地设置JFrame的缺省关闭操作,则缺省值是DO_NOTHING_ON_CLOSE。 ...因为浏览器或小应用程序阅读器不能把这种小应用程序实例化,所以这种小应用程序是不完善的(从技术上说,它没有小应用程序的相关内容)。...因为轻量组件的层序与它们所在的重量容器的层序相同,所以轻量按钮和它们的容器的层序相同。轻量按钮的容器就是小应用程序的内容窗格。 注意 第一个添加到内容窗格的轻量按钮在其他轻量按钮之上显示。
JRadioButton类的构造方法 构造方法 功能描述 public JRadioButton() 创建一个未选择内容的单选按钮,其文本未设定 public JRadioButton(Icon icon...) 创建一个未选择内容的单选按钮,其具有指定的图像但无文本 public JRadioButton(Icon icon, boolean b) 创建一个具有指定图像和选择状态的单选按钮,但无文本 public...jFrame=new JFrame("JFrame窗口"); //创建Frame窗口 7 JPanel panel=new JPanel(); //创建面板 8...JCheckBox类的构造方法 构造方法 功能描述 public JCheckBox() 创建一个没有文本或图标,且初始化状态未被选定的复选框 public JCheckBox(Icon icon) 创建以...jFrame = new JFrame("JFrame窗口"); // 创建JFrame窗体 7 JLabel jLabel=new JLabel("您的爱好是:"); 8
12.2.1 JFrame JFrame窗体是一个容器,它是一个独立拥有标题栏和尺寸重置图标的窗口组件,是Swing程序中各个组件的载体,可以将它看作是承载这些Swing组件的容器。...可以通过继承JFrame类创建一个窗口,在这个窗口中添加组件,同时为组件设置事件,拥有最大化、最小化、关闭的按钮。 JFrame类常用的方法如表12.1所示。...JFrame类常用方法 常用方法 功能描述 public JFrame () 创建一个没有标题的窗口 public JDialog(String title) 创建一个标题title的窗口 public...如果没有设置窗口的关闭方式,单击关闭按钮是不能真正关闭窗口的,即单击关闭按钮时窗口会消失,虽然窗口消失了,但是还在JVM中。...12.2.1 JDialog 对话框需要依赖于一个窗口,它会随着窗口的关闭而关闭,随着窗口的最小化而隐藏,随着窗口的还原而再次显示。 对话框容器分为模态对话框和非模态对话框两类。
显卡保存屏幕的内容,这些内容是在显卡的内存中存在的,它会呼叫一些函数来修改显示内容,另外显卡在显示器背后工作,它把内存中的内容push到显示器来呈现。而显示器只是简单的呈现显卡告诉它的内容。...我们可以把它想像成一个画布,在Java的API中是使用JFrame来抽象表示的,该类是Window类(Window 对象是一个没有边界和菜单栏的顶层窗口。窗口的默认布局是 BorderLayout)。...如果 //一些平台希望全屏幕窗口成为顶层组件(Frame),那么最好使用java.awt.Frame类,而不JFrame类。...()方法来获取模型列表中的第一个显示模型 如果不需要主动呈现,那么没有必须给JFrame使用全屏幕显示,这时需要我们关闭它 frame.ignoreRepaint(true); 但是,它不会关闭repaint...private Animation animation; //设置妖怪的显示位置--实现妖怪的移动需要两种元素:当前妖怪的位置和它的移动速率。
包里的,定义一个窗口 aa.setTitle("餐厅点餐系统");//设置主窗口名字 JButton an1=new JButton("菜式导航");//新建按钮 aa.setSize(500,...(JFrame.EXIT_ON_CLOSE);//防止关闭后资源内存示范,默认关闭操作 aa.setVisible(true);//窗口显示BOOL值,和JFrame成对出现,如果没有将无法建立窗口...} } ` 以上是面向过程的思路,而Java是面向对象的,所以我们进行程序修改规范化: package bigHousework; import java.awt.*; import javax.swing.JButton...} public Screen() {//把初始化的全部工作放在构造函数里 this.setTitle("餐厅点餐系统");//设置窗口名字 this.setSize(350,180...;//窗口显示BOOL值,和JFrame成对出现,如果没有将无法建立窗口 } } 不需要建对象了,直接封装,aa变成this
https://edu.51cto.com/course/32948.html JPanel是一种没有边框,不能被移动、放大、缩小或关闭的非顶层容器,默认情况下是透明的,可以使用setOpaque...与顶层容器不同的是,面板不能独立存在,必须被添加到其他容器内部。在进行界面设计时,通常将用户界面划分成若干个区域,每个区域用一个面板。这样处理的好处是:将窗口内容结构化,有利于管理、更换、调试。...(JFrame.EXIT_ON_CLOSE); 20 jFrame.setVisible(true); 21 } 22} 程序的运行结果如图12.5所示。...jf = new JFrame("JFrame窗口"); 5 JPanel contentPane=new JPanel();; 6 JScrollPane jPanel...例12-4运行结果 案例12-4中,在JTextArea文本区域组件不断输入内容回车,当内容超出滚动面板宽度和高度的时候,JScrollPane会出现横向和纵向滚动条。
写的有点久了,我忘了这块为什么写了个夹) package Love; import sun.plugin.dom.css.RGBColor; import javax.swing.*; import...//先建立一个窗口 int scwidth2 =300; int scrheight2 =100; JFrame frame2=new JFrame("555...//先建立一个窗口 int scwidth2 =300; int scrheight2 =100; JFrame frame2=new JFrame("555...//先建立一个窗口 // int scwidth2 =800; // int scrheight2 =600; // JFrame frame2=new JFrame...//先建立一个窗口 // int scwidth2 =800; // int scrheight2 =600; // JFrame frame2=new JFrame
领取专属 10元无门槛券
手把手带您无忧上云