www.mblogger.cn
一觉醒来 岁月已成沙漠
#2007年9月8日
滚动条设置
11:13

JAVA中,利用JScrollPane来设置滚动条。

JScrollPane 基本上由 JScrollBar、一个 JViewport 以及它们之间的连线组成,如下图所示。

以下文本是对此图像的描述。

 JScrollPane实现滚动条并不难。下面是用JScrollPane对JEditorPane实现滚动条的例子:

JFrame frame = new JFrame(''Test'');

JEditorPane pane = new JEditorPane();

pane.setContentType(''text/html'');

pane.setText(''Welcome!!!'');

JScrollPane scrollPane = new JScrollPane(pane);

scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);

scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);

frame.getContentPane().setLayout(new BorderLayout());

frame.getContentPane().add(scrollpane, BorderLayout.CENTER);

 
[评论 (0)]
 
JAVA中加载html文档
10:55

在JAVA中,可以用JEditorPane和JTextPane来显示html文档。其中,用JEditorPane实现起来很容易。

下面是摘自jdk帮助文档的内容:

默认情况下,已知下列内容类型:

text/plain
纯文本,即无法识别给定的类型时所使用的默认值。在此情况下使用的工具包是 DefaultEditorKit 的扩展,可生成有换行的纯文本视图。
text/html
HTML 文本。在此情况下使用的工具包是类 javax.swing.text.html.HTMLEditorKit,支持 HTML 3.2。
text/rtf
RTF 文本。在此情况下使用的工具包是类 javax.swing.text.rtf.RTFEditorKit,它提供了对多样化文本格式 (Rich Text Format) 的有限支持。

有多种方式可将内容加载到此组件中。

  1. 可使用 setText 方法来初始化字符串组件。在这种情况下,将使用当前的 EditorKit,且此类型为期望的内容类型。
  2. 可使用 read 方法来初始化 Reader 组件。注意,如果内容类型为 HTML,那么只有使用了 标记,或者设置了 HTMLDocument 上的 Base 属性时才能解析相关的引用(例如对于类似图像等内容)。在这种情况下,将使用当前的 EditorKit,且此类型为期望的内容类型。
  3. 可使用 setPage 方法来初始化 URL 组件。在这种情况下,将根据该 URL 来确定内容类型,并且设置为该内容类型所注册的 EditorKit

下面是实现步骤:

首先,定义一个JEditorPane pane,并且设置属性为pane.setContentType('' text/html'');这里,内容类型有三种,即上面所说的“text/html”,“text/plain”,“text/rtf”。要实现html,则选择“text/html”。

其次,利用属性setText来加载一个html格式的String,属性方法为setText(String t)。例如,pane.setText(''你好'');

另外,也可以利用属性setPage来加载一个url链接的html,属性方法为setPage(URL page),或setPage(String url)。

 
[评论 (0)]
 
 
#2007年9月6日
布局管理器
16:00

为了JAVA语言的跨平台支持,实现GUI平台界面的平台无关性,AWT采用了布局管理器接口LayoutManager来完成可视化GUI组件的布置。它可以对各控件按照预设方式进行排布。当然,不用布局管理器也可以,那叫绝对布局。绝对布局和使用布局管理器的区别就是,使用绝对布局的话,当窗口缩放的时候,窗口中的控件不会智能地跟着缩放。而使用布局管理器就可以。

布局管理器分为很多种,包括BorderLayout, BoxLayout,FlowLayout,GridLayout等等。各种不同的布局管理器有不同的使用方法。可以参阅JDK的html帮助文档。下面要说的是一种在界面中放置空白区域的方法。

有一种情况,那就是使用布局管理器不太好实现界面的布局的时候,可以自己根据需要在固定区域添加空白区域。这个空白区域用JPanel来实现。可以对JPanel进行预设大小,以及最小尺寸的要求,那样的话,当窗口缩放的时候,JPanel也会跟着缩放。

例如,当你需要在BorderLayout的左边放置一块空白区域,那么可以进行如下操作:

JPanel leftPanel = new JPanel();

leftPanel.setPerferedSize(new Dimension(30, 10));     //初始化大小

leftPanel.setMinimumSize(new Dimension(30, 10));    //最小尺寸要求

frame.getContentPane().setLayout(new BorderLayout());

frame.getContentPane().add(leftPane, BorderLayout.WEST);

 
[评论 (0)]
 
JRadioButton的用法
15:36

本人学JAVA没多久。在练习代码的时候,JRadioButton组件开始不会用。翻阅一些资料后,终于明白。

JRadioButton组件是单选按钮,用于一组互斥的选项。这一组选项都应该放在一个ButtonGroup里,这样才能够让这一组选项中只能选择一个。在这个操作中,只要把这一组按钮添加到ButtonGroup中就可以了,剩下的操作跟JButton差不多。我开始以为只要把ButtonGroup整个加到JPanel,就可以把所有的JRadioButton组件都加到窗口或对话框中,事实是,ButtonGroup不能被加到JPanel或Container中,而直接把每个JRadioButton组件加到JPanel或Container中就可以了。

下面是一个例子。

import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import java.awt.Dimension;
import java.awt.Color;
import java.awt.FlowLayout;


public class JRadioButtonDemo
{
 public static void main(String[] args)
 {
 
  JRadioButton red, white, cyan;
  red = new JRadioButton ("red");
  white = new JRadioButton ("white");
  cyan = new JRadioButton ("cyan");
 
  ButtonGroup group = new ButtonGroup ();  //这里就是把所有的JRadioButton放在一个组里
  group.add (red);
  group.add (white);
  group.add (cyan);
 
  JPanel panel = new JPanel (new FlowLayout (FlowLayout.CENTER, 1, 0));
  panel.setBackground (Color.white);
  panel.setPreferredSize (new Dimension (200,50));
  panel.add (red);        //添加到面板
  panel.add (white);
  panel.add (cyan);
 
  JFrame frame = new JFrame("JRadioButtonDemo");
  frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
 
  frame.setContentPane(panel);
  frame.pack();
  frame.show();
 }
}

 
[评论 (1)]
 
JAVA Swing中三种事件处理方法
10:47

转载自:http://www.chinaunix.net ,作者:keigopan发表于:2003-03-23 15:24:48

Swing是目前Java中不可缺少的窗口工具组,是用户建立图形化用户界面(GUI)程序的强大工具。Java Swing组件自动产生各种事件来响应用户行为。如当用户点击按钮或选择菜单项目时,Swing组件会产生一个ActionEvent。Swing组件会产生许多事件,如ActionEvents,ChangeEvents,ItemEvents等,来响应用户的鼠标点击行为,列表框中值的改变,计时器的开始计时等行为。在Java Swing编程中,通过注册监听器,我们可以监听事件源产生的事件,从而在事件处理程序中处理我们所需要处理的用户行为。

Java Swing中处理各组件事件的一般步骤是:

1.新建一个组件(如JButton)。

2.将该组件添加到相应的面板(如JPanel)。

3.注册监听器以监听事件源产生的事件(如通过ActionListener来响应用户点击按钮)。

4.定义处理事件的方法(如在ActionListener中的actionPerformed中定义相应方法)。

以上步骤我们可以用多种方法实现。但人们通常用二种方法。第一种方法是只利用一个监听器以及多个if语句来决定是哪个组件产生的事件;第二种方法是使用多个内部类来响应不同组件产生的各种事件,其具体实现又分两种方式,一种是匿名内部类,一种是一般内部类。

为了说明如何使用上述三种方法实现事件的处理方法,我们建立一个简单的应用程序。该程序界面有两个按钮,当用户点击相应的按钮,就会弹出一个对话框显示相应的内容。通过这个简单程序,你可以实现自己更多、更复杂的用户界面程序。

首先,我们利用单个监听器来实现该程序。我们定义一个名为Simple1的类来包括所有代码。所有的用户行为(如点击按钮)由一个监听器SimpleListenner中的actionPerformed方法来处理。以下是代码:


/*
*Simple1.java-处理事件的第一种方法
*在这个例子中,利用一个ActionListener来监听事件源产生的事件
*用一些if语句来决定是哪个事件源
*/


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Simple1
{

       private static JFrame frame;     //定义为静态变量以便main使用
       private static JPanel myPanel;  //该面板用来放置按钮组件
       private JButton button1;          //这里定义按钮组件 
       private JButton button2;          //以便让ActionListener使用 

       public Simple1()                    //构造器,建立图形界面
       {
            //新建面板
            myPanel = new JPanel();
            //新建按钮 
            button1 = new JButton("按钮1");         //新建按钮1
            button2 = new JButton("按钮2"); 

            SimpleListener ourListener = new SimpleListener(); 
            // 建立一个actionlistener让两个按钮共享
            button1.addActionListener(ourListener);
            button2.addActionListener(ourListener); 

            myPanel.add(button1);       // 添加按钮到面板 
            myPanel.add(button2); 
      }

       private class SimpleListener implements ActionListener
      { 
         /* 
          *利用该内部类来监听所有事件源产生的事件
          *便于处理事件代码模块化 
          */
          public void actionPerformed(ActionEvent e)
         {
                //利用getActionCommand获得按钮名称
               //也可以利用getSource()来实现
               //if(e.getSource()==button1)

               String buttonName = e.getActionCommand();
               if(buttonName.equals("按钮1"))
                        JOptionPane.showMessageDialog(frame, "按钮1被点击"); 
               else if(buttonName.equals("按钮2"))
                        JOptionPane.showMessageDialog(frame,"按钮2被点击"); 
               else
                        JOptionPane.showMessageDialog(frame, "Unknown event"); 
          }
   }

    public static void main(String s[])
    {
          Simple1 gui = new Simple1(); // 新建Simple1组件

          frame = new JFrame("Simple1");  // 新建JFrame
          //处理关闭事件的通常方法
          frame.addWindowListener(new WindowAdapter(){
          public void windowClosing(WindowEvent e)
          {System.exit(0);}}); 

          frame.getContentPane().add(myPanel);
          frame.pack(); 
          frame.setVisible(true);
     }
}

让我们来看看以上代码是如何工作的。在main方法中,我们定义了一个JFrame,然后将面板Jpanel添加到窗体中,该面板包括两个按钮。相应的变量Frame,button1,button2定义在程序的开头部分。

在程序入口main方法中,首先新建Simple1组件,通过构造器建立用户GUI,定义一个面板Jpanle,,增加两个按钮,然后利用JButton.addActionListerner将两个按钮加入到一个活动监听器SimpleLister中,最后,两个按钮添加到面板。当GUI建立后,我们将面板添加到窗体并显示结果。当用户点击按钮时,程序调用actionPerformed方法,通过if语句来判断是哪一个按钮被点击,然后在对话框中显示相应的内容。

利用一个监听器来处理事件的缺点是,当程序比较复杂时,需要一大串的if语句来实现,程序代码较难阅读与维护。当然,如果处理的事件较少,这种方式比较简单。

通过使用匿名内部类可以解决上述存在的问题。使用简单的匿名内部类作为addActionListener的变量即可。以下是实现代码:


/*
 *Simple2.java-处理事件的第二种方法
 *在这个例子中,利用匿名内部类来监听每一个事件源产生的事件
 *避免使用一些if语句来决定是哪个事件源
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Simple2
{
       private static JFrame frame;     //定义为静态变量以便main使用 
       private static JPanel myPanel;  //该面板用来放置按钮组件
       private JButton button1;          //这里定义按钮组件 
       private JButton button2;          //以便让ActionListener使用 
 
       publicSimple2()                    //构造器,建立图形界面 
       {
              //新建面板
              myPanel = new JPanel(); 
              //新建按钮 
              button1 = new JButton("按钮1");  //新建按钮1
              button2 = new JButton("按钮2");

              //每一个事件源需要一个监听器
              //定义一个匿名内部类来监听事件源产生的事件
              button1.addActionListener(
                       new ActionListener()
                      {
                             public void actionPerformed(ActionEvent e)
                             {
                                    JOptionPane.showMessageDialog(frame, "按钮1被点击");
                              }
                      } ); 

               button2.addActionListener( 
                      new ActionListener()
                     {
                             public void actionPerformed(ActionEvent e)
                            {
                                   JOptionPane.showMessageDialog(frame, "按钮2被点击");
                             }
                       } ); 

              myPanel.add(button1); //添加按钮到面板
              myPanel.add(button2);
      }

     public static void main(String s[])
     {
             Simple2 gui = new Simple2(); // 新建Simple2组件

             frame = new JFrame("Simple2");  //新建JFrame
             //处理关闭事件的通常方法 
             frame.addWindowListener(new WindowAdapter() {
                         public void windowClosing(WindowEvent e)
                        {System.exit(0);}}); 
             frame.getContentPane().add(myPanel); 
             frame.pack();
             frame.setVisible(true);
       }
}

使用匿名内部类同样存在许多另外的问题。首先,根据组件在代码中被定义的不同位置,类的定义以及处理事件的代码将分散在程序的各个部分,不是集中在一块,同样不便于阅读与维护。各事件的处理全部由嵌套的程序块组成,视觉上很难定位程序代码。如果事件处理程序比较复杂,内部类中的代码将变得很长,你将找不到相应的组件定义位置。最后,当工具栏、菜单栏目等需要处理同样的用户行为时,该方法将使代码更难维护。

我们使用一般的命名内部类可以解决以上许多问题。所有的事件处理方法都集中在一块,并且都具有有意义的名称,程序非常容易阅读与维护。单个的事件处理程序也可以被工具栏、菜单栏等重复使用,

以下是实现代码:


/*
 *Simple3.java-处理事件的第三种方法
 *For this example, we will use inner member classes to
 *在这个例子中,利用一般内部类来监听每个事件源产生的事件
 *该方法避免了第二种方法中由于使用匿名内部类而导致的代码混乱
 *便于集中处理事件代码
 *每一个Hander可以被工具栏或菜单多次使用
 */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Simple3
{
       private static JFrame frame;          //定义为静态变量以便main使用
       private static JPanel myPanel;       //该面板用来放置按钮组件 
       private JButton button1;               //这里定义按钮组件
       private JButton button2;              //以便让ActionListener使用

       //利用一般内部类来监听每一个事件源产生的事件如(button1,button2) 
       private class Button1Handler implements ActionListener
      {
              public void actionPerformed(ActionEvent e)
              {
                    JOptionPane.showMessageDialog(frame, "按钮1被点击");
               } 
       } 
 
      private class Button2Handler implements ActionListener
     {
              public void actionPerformed(ActionEvent e)
             {
                     JOptionPane.showMessageDialog(frame, "按钮2被点击");
             }
    } 
 
        public Simple3()                   //构造器,建立图形界面
       {
             //新建面板
             myPanel = new JPanel(); 
            //新建按钮

              button1 = new JButton("按钮1");  //新建按钮1
              button2 = new JButton("按钮2");

             //对每一个组件注册监听内部类 
              button1.addActionListener(new Button1Handler()); 
              button2.addActionListener(new Button2Handler());

              myPanel.add(button1);              //添加按钮到面板
              myPanel.add(button2); 
        } 

       public static void main(String s[]) 
       {
              Simple3 gui = new Simple3();  // 新建Simple3组件

              frame = new JFrame("Simple3");  //新建JFrame
             //处理关闭事件的通常方法 
             frame.addWindowListener(new WindowAdapter() {
                   public void windowClosing(WindowEvent e)
                             {System.exit(0);} });

              frame.getContentPane().add(myPanel);
              frame.pack();
              frame.setVisible(true);
}
}

以上分析了在Java Swing中三种事件的处理方式,其中利用一般内部类来实现的方法,从代码书写、阅读、维护以及程序的可扩展性角度来看,最为值得推荐供大家使用。

PS:以我的分析,如果程序很大,那么可以把以上三种方法的事件处理部分单独提取出来作为一个事件处理的类。而且,如果许多事件是类似的,那么可以在第一种方法来实现,可以避免重复写代码。如果事件处理的代码较多,并且各事件差异比较大,那么可以用第三种方法来实现,为每一种事件单独写一个类来实现。第二种方法和第三种方法类似,只不过第二种方法采用内部类来实现。如果事件处理较为简单,也可以采用第二种方法。

 
[评论 (1)]
 
 
#2007年7月16日
心情札记
16:00

近日来,心情不佳。原因诸多,列举一二如下:

最大的烦恼:妹妹的工作

妹妹从北京毕业,回来厦门工作。按理说,中国政法大学英语专业毕业的学生,在厦门这个外贸工作多如牛毛的城市应该很容易找到一份对口的工作才是。偏偏事与愿违,到现在位置,正规的工作机会都没有一个。她居然跑去卖康宝来的减肥产品。感觉她的大学都白读了,专业知识一点都用不上。早知道这样,还不如来我公司工作,至少我们公司的销售底薪有800块,不至于饿死。

现在房子也找好了,总算把她安顿下来了。花了不少钱,现在自己的资金很紧张,她还要坚持做那种没有工资的工作。我看她自信满满,只怕是没有时间给她浪费了。因为工作的原因,我和她的关系日益不好,现在一提到她的工作她就跟我吵架,说她喜欢的工作我们都不支持她去做,她不喜欢给人打工,赚不到钱。还总说人家老太太都做得好,她凭什么做不好呢。她还去听安利的课,感觉上她的思想已经中毒了。说什么都不回头。也许是我的管理方式有问题,但我也是人,我也会有情绪的。她这样弄得我很难做。我希望她能先安顿下来,至少先找个稳定的工作先做着,有了资本和人脉关系后再去做销售也不晚。她刚来厦门,没什么认识的人,在我看来,做减肥产品这种性质的销售简直是太难了。她还不听人讲,固执得要命。我真是没办法了。今天居然还借钱交了200块进去说是交材料费,气得我半死。在我看来,一个公司要是连材料费都要员工掏的话,这个公司不进也罢。何况在那个公司工作中午都没有桌子可以休息,也没有电脑可以用,也没有电话可以用。员工要自己掏电话费。简直糟透了。做销售有很多种类型,这种类型的换作我的话怎么也不会去做的。

再一个头疼的事情就是租房子。因为妹妹来厦门没地方住,我只好去找一套两房一厅的房子搬进去一家人住。房价一直上涨,连租房都越来越贵了。找来找去,找了一套1200的房子倒不错。只是价钱也不错。押一付三的交租方式,加上中介600块,再加上一年的宽带,一下子花去6K多。突然觉得自己好穷啊。原来那间住着的房子签了一年没到期,我只好转租出去。那间是别人一套租下来以后再把其中一间出租给我们的,我们管他们叫二手房东。无奈原来二手房东实在难相处,找人进来住还意见很多。弄得人家见到他们不爽快都不想住。他们还想搬来我的房间又让我找人去他们那间小房子住,我说你们要进来住我就跟你们结算,你们再去找人进来住。他们不肯,那我也只好不让他们住了。谁知他们竟然打起我房间的衣柜的主意来了。我说衣柜给了房子不好租出去了。如果新来的租户不需要衣柜的话,你们再拿走吧。他们因为这事耿耿于怀,后来有人来租房,已经看中了,定金也给了,他们跟他要衣柜,那人不肯,他们就直接把这桩交易给搅了。我真是气愤极了。觉得世上怎么会有这么自私的人。另外就是,我直到那时才发现,他们原来说的一套租下来1200一个月的说法原本就不对。也怪我自己太容易相信别人,刚搬来的时候,我也没叫他们拿合同来看,觉得房子还可以就直接租了。到这时有人来租房子才找他们要合同,发现合同上明明写着是1100一个月。我可以接受他们中间赚我的钱,但我不能接受他们赚得这么光明正大。撒谎的家伙!!!撒谎的二手房东!!!

搬家的前一天,自行车莫明其妙的不见了。可能是被偷了吧。

再有一件事情就是工作上的事情了。事事都不顺啊。难道是犯了太岁了吗?

 

 
[评论 (0)]
 
 
#2007年6月26日
愤怒
12:24

很久以前,我认为自己是一个脾气很好的人。和Ivan在一起后,我偶尔也会发发脾气。在我看来,女生本来就应该有发脾气的权力的。偶尔无理取闹一下也不错,要不然生活该乏味死了。

昨天很开心的把客服和客户上下线的功能做好了,想着今天把剩下的工作结了,那么本周剩下的时间我就可以安心写我的论文。但是,事与愿违!!!

早上起来,发现连登录都登录不了了,更别提其他的工作了。剩下的工作都是在登录的基础上才能继续往下开发的。没办法,我只好先解决这个问题了。奇怪的是,服务器能启动,就是登录不了。昨天都做得好好的,今天怎么突然就不行了呢?真是怪事啊!!!似乎我总是碰到这种灵异事件。我知道什么问题都总该有原因的,耐心找吧。重启tomcat,还是不行。断点设了,可是根本没进去。我怀疑RED5根本就不稳定。我重新从服务器加载代码,所有环境重新设一遍,发现还是不行。我把后续的代码都屏蔽了,设置为直接允许登录,还是不行。因为根本进不到登录连接的代码,我怀疑是地址有问题。后来我试了一下把连接地址的端口去除了,居然连上了。然后又把端口加上,发现还是可以连接。我又把服务器的后续代码给加上,试试行不行。发现又不行了。然后我又恢复到刚才可以连接的状态,重新连接,发现居然又不行了。

天哪,我简直就要疯掉了。这到底是什么问题啊!!!一上午什么都没做,光调试来调试去的,什么结果都没有。突然觉得非常愤怒。一气之下全部都关了。我不做了还不行吗?

跟昨天唯一不一样的是,我把电脑移到窗户边了,这样风很大很舒服,不会热。难道是这个角落风水不好?天哪,都不敢往下想了。

程序员的耐心可不是一天两天可以培养出来的。在我看来,我根本不适合去做开发,一个女生,做什么开发!何况,我根本不是那种很有耐心的人。那是一种境界,我浮浮躁躁的,大大咧咧的一个人,恐怕没那么容易修炼得到真果的。

唉,我还是愤怒啊!浪费我的时间。早知道上午不如写论文好了,可是哪有这么多的早知道啊!!!

 
[评论 (0)]
 
 
#2006年12月27日
什么都不想做
14:36

不知道为什么,这个星期都没什么心思做事。常常觉得很困,脑袋里空荡荡的一片。我想大概是因为比较闲的原因,虽然这个星期的任务还没开始做(*o*)。

由于工作的需要,开始接触C#,因为李臻是大师,于是拜他为师。他坐我后面,不会就常常去烦他。幸好他也比较耐心,不然我这个对C#一窍不通的家伙,恐怕没有人肯教的。然后,想来想去,学习这种事情,终归还是要自己努力一把才可以的,大师坐在我后面,也只能指点指点,自己勤奋一些还是应该的。不过自己对于编程这种事情,始终还是不太感冒。但除了这个,我不知道自己还能做什么。

昨天台湾地震,波及福建。据说在昨晚8:30左右,厦门的人们有比较强烈的震感。那时我估计在做饭或者在吃饭,没有丝毫感觉。华仔在九点多打电话来,说龙岩有地震,他上微机课,桌子忽然在抖,他还以为是他同学捣蛋,没想到大家的都在震。吓得他们一堆人往外跑。厦门的街上有许多人,避难!于是,昨晚便不太敢睡觉,一直在想,要是真的地震了,我应该跑还是不跑?说不定跑的人死了,不跑的人倒没死。到晚上1点多了,才迷迷糊糊睡去。看来我还是很怕死的。

头晕晕的,BOSS来了,很快又走了。要是BOSS天天不在就好了。他前几天出差,今天回来了。唉,我不由得感叹,幸福的时光总是过得这么快。BOSS是个老好人,上次因为要专业英语考试,要回大连。他知道了,居然给我出机票,然我飞回去考试。要知道,俺这种穷人,连飞机都没有坐过的。我听了,别提有多感动了。不过我还是不想欠一个这么大的人情,于是做了一件比较坏的事情——找舒瑜替我考了。幸好老师人够好,发现了也没说穿。据张炜给我算的命,说我这辈子遇贵人很多。我想也是,虽然我常常傻不愣噔的。Ivan说,街上那些骗人的,谁都不骗,看到我就想骗,因为知道我很好骗。难道这是真的吗?

快点元旦吧,元旦就可以发工资了。典型的月光族,嘿嘿。

 
[评论 (1)]
 
 
#2006年11月22日
被BS的感觉
16:49

最近比较郁闷!

碰上一堆不顺心的事,脾气都变得古怪,很容易烦躁。BF比较倒霉,经常拿他发泄。明白不应该这样,但有时候很难克制。然而幸好他也宽容,不太跟我计较的。

突然觉得自己非常笨。在公司,经常被BS。今早一来就被说笨,郁闷了一上午。我想,大概是真的挺笨的,不然不会两三个人都拿我开涮。其实我并不是那种会计较的人,可能是因为最近心情不大爽,所以别人说的话都往心里去了。

BOSS不高兴我回学校。对于会议论文的事,他想都没想就拒绝我去。这件事让我感觉他其实还是有些自私的。待人不错是一回事,但是因为我走了的话,公司损失了一位廉价劳动力,他自然是不愿意的。虽然说我并不是那么的厉害,但是,至少打杂也可以做不少。少了个人,其他人自然会多做事。然而,我也有我的考虑。我毕业后未必就会留在公司,他希望我留下,我却还在观望中。想得多了,自然就烦了。

咳,不管了,下班了,回家。

 
[评论 (1)]
 
 
#2006年10月30日
恶心的电脑!!!
18:14

电脑老是自动重启,郁闷的要命!工作的好好的,突然就黑屏,自动重启了,有时候写的东西也没有保存,又得写一遍!简直恨得我牙根痒痒的,要咬人。

重装系统也没用,以为是硬盘的问题,检测又是状态良好。后来把硬盘拆到另一个机箱重装系统,还是出问题,连显示器也跟着闪烁。我快疯了!!!看一天电脑下来,眼睛被严重强奸!!!

有时候还真佩服自己有这样的耐性,两个月来,电脑一直处于这种不稳定状态,查也查不出原因。同事就只知道拿我开涮,笑我人品不好,没有一个够哥们!不过其实也不能怪他们,因为他们也纳闷,碰到这种问题,他们似乎也是第一次。

今年犯太岁,不过也太衰了。丢了手机不够,接着丢自行车,连QQ也被盗了。一台电脑每天都要让我郁闷,有时候真恨不得把它从十楼窗户扔出去,一了百了,这日子简直不是人过的!!!

破电脑,烂电脑,猪脑,你到底出了什么问题啊?!天哪,救救我吧!!!!!!!!我呐喊,我呐喊,我呐喊!!!!!!!!!!!!!

 
[评论 (2)]
 
 
#2006年9月14日
手机没了
12:59

上班的第二个星期,手机便没了。虽然不是很好看,但用了两年,也很有感情了,何况我还保养得很好。亏了亏了……天杀的贼!!!

慢慢适应了上班的节奏。只是学校的事情始终有些放心不下,一心挂两头,这种感觉,不太好玩。周末公司要搬地方了,换个更大的地方,但是离住的地方更远了,最烦的是要起得越来越早。据说跟业务部的搬到一起,这样两个部门就不用两地分居了。业务那里的气氛很活跃,技术部的倒是比较沉闷的说。

好久不写东西了,手生了……

 

 
[评论 (1)]
 
 
#2006年8月8日
我的感触
11:22

在厦门待了好长一段时间了。原本自信满满的来厦门找工作,可到现在却一个面试机会都没有,原有的自信一溃千里。我已经不愿意再继续找了,因为觉得看不到希望。都说找工作难,没有亲自经历,是很难体会的。

还是在学校待着舒服,然而,逃避始终不是办法。我需要勇气来面对一切。一遍一遍的问自己,我到底需要什么?我希望自己以后能过一种什么样的生活?做技术适合我吗?如果不适合,那么,假设考上公务员,又能适合我吗?大学讲师?除了这些,就没有其他选择了吗?……我也想不清楚。

是什么原因让我这么难找工作呢?开始的时候,我认为一方面是因为找实习,公司不肯要也是自然;另一方面,觉得自己是个女的,这个社会,找工作,特别是技术工作,“性别歧视”始终是存在的;再有,觉得自己运气不好,本命年通常都比较不顺的。

慢慢地,我意识到这只是在为这件有失我面子的事实寻找一些冠冕堂皇的借口,并且开始厌倦这样逃避现实。每一个成功者都清楚知道自己需要的是什么,他们懂得如何去寻找答案,而不是整天为自己找理由开脱。长期处于一种心理优势的状态,让自己不愿意接受某些事实,这并不是一件好事。突然想起《沧浪之水》里面描写的那个厅长的心态了。遇到问题,经常习惯性的寻找客观的原因,而不愿意从自身寻找原因。这固然是不对的。但这是大多数人的一种怪癖,我也不例外。

想来想去,觉得始终是自己能力不够。客观原因是有的,但是只要诚心做了,这些都是可以克服的。许多公司要求有工作经验,这一点我是不具备的。但是,如果在学校的时候足够努力足够认真的话,还是可以学到许多东西的,而不会像现在这样,看自己的简历,自己都觉得苍白无力。终于明白,“混”是混不到饭吃的。回头想想,不知道什么时候开始,自己习惯于这样无所事事,不知道每天那么多的时间都应该怎么打发,但心里却始终有一种罪恶感。这些感觉加起来,让自己变得很不开心,然后就失眠了,接着便更加烦躁,但是不知道为什么却一直走不出来。现在想到回学校都有点后怕。

我现在能做什么呢?

1。不要为自己寻找理由开脱

2。好好安排接下来的生活。是继续找工作,还是回学校好好读书?

3。我以后到底想做什么?一定要在最短时间内想明白。查士德斐尔士说过,『目标的坚定是性格中最必要的力量泉源之一,也是成功的利器之一。没有它,天才也会在矛盾无定的迷径中,徒劳无功。』

4。决定以后,积极付出行动。没有行动的梦想只是空想。

不能再懒惰了,懒成精了就不好了。如果我们真的想做一件事,想得食不甘味,夜不能睡,就一定会去做,而且一定会做得很好,要是真的喜欢,总会有时间的。在现实的生活环境下,年纪越大,却有样东西越小,你知道那是什么吗?那就是「胆子」。年纪越大胆子越小、脑子想得越复杂。过去曾经拥有的梦想,都逐渐淡忘了,或者只敢偷偷的藏在心中,随着年龄增长慢慢的消逝。我需要勇气,调节心态,面对生活。

祝福我吧。我会像这只小狗那样,奔跑起来,越过湍急的河流,奔向远方的太阳。

 
[评论 (0)]
 
 
#2006年7月28日
天黑了
18:29

天黑了。又一天,就这样过完了。

下午下了一场大雨。白天一个人在家,写简历,写简历,写简历。找工作啊,真是太无奈了,烦死了。你说,人活着,为了这碗饭,容易么?

Ivan出差了,不知道什么时候才回来。又像上次,没带走手机电池和充电器,现在手机早都没有电了。他是不会上网的,于是便又和他失去了联系。大家都有工作,就我没有,待在家情愿吃饼干,也不太愿意当个煮饭婆的。

看电影,睡觉,上网,挺音乐,吃饭,偶尔看两页书,这些成了我现在生活的全部。

老梁说要回来吃饭,也不知道几点回来。平时他们回家的时间都不一样的,于是我也便不用做饭了,情愿出去吃,或者吃点干粮。饭好了,闻到饭香。待一会儿该要做菜了。

七夕要到了。时间过得真快啊。想起去年的七夕,我和Ivan瞎逛逛到东湖公园的事情,还觉得历历在目,然而却已经过了一年了。不知道今年能不能和他一起过了。

好啦,老梁回来了,该做饭了。呵呵。

 
[评论 (4)]
 
 
#2006年7月2日
性感的声音
20:06

嗓子坏了好几天了。声音一直很沙哑,快说不出话了。不过因为我很爱说话,所以还是一直不停地说。我用阿Q的心态来安慰自己,觉得自己这种声音很性感。哈哈……这种状态持续了大概五六天,于昨天晚上突然来势汹汹的几个喷嚏宣告本人感冒了。

其实一直觉得很奇怪。因为老娘感冒的时候从来都不会嗓子疼超过2天的,声音沙哑的时候就更少了。因此之前也掉以轻心的,没有认为自己这种状态是感冒的前兆,一直以为是上火了,一定是最近复习忙着考试,还有一些乱七八糟的事情弄的。没想到就真是感冒了。今天头越来越疼,鼻涕也不听使唤地塞住了我可怜的鼻子。唉,我可怜的英语考试啊,到这个节骨眼来感冒,真是气煞本小姐了。一堆堆的单词,看着好象在嘲笑我似的。老娘不认识他们,他们也不认识老娘。不管,这两天之内一定会记住你们这些大头鬼的名字,让你们看看老娘的本事。

表哥前两天从上海过来。感觉像自己害了他一样。也没有多余的时间陪他玩,昨天他就回去了。对不起啦!想起跟他闲聊的时候说到的本命年。我开始一直以为本命年应该是顺顺当当的,他骂我猪头,笨死了。说本命年应该是很不顺的一年,所以才会让人买红内裤穿的。忽然才像开了窍一样,恍然大悟。我说今年我怎么这么不顺呢,一定是因为没有天天穿红内裤。赶紧买了穿,希望后半年能顺顺利利的。哈哈。

关于本命年的说法,从中华农历网摘下几段话:

中国古代的历法,是用天干和地支的组合来纪年的。古典文学名著《西游记》第一回中有一句话“山中无甲子,寒尽不知年”。这里所说的″甲子″即是指用干支纪年的历法。意思是说,由于深山里面没有历法,二十四节气中小寒、大寒已经过去了,还不知新春即将来临。

 古代采用干支纪年的方法,是非常科学的,但在当时乃至后来漫长的社会进程中,能识文断字的人毕竟是极少数。要用甲乙丙丁、子丑寅卯等天干地支的组合来记住所生的年份,这对于不识字的大多数人来说是非常困难的。为了便于记忆和推算,人们就采用鼠、牛等十二种动物来与十二地支相对应的方法,每年用其中的一种动物来作为这一年的属相。如公元二OO四年按农历是甲申年,属相便是猴。记住甲申年比较困难,记住猴年就容易多了。历史上,人们结婚生子后,不用户籍登记,对平民百姓来说孩子出生那年的年号记住记不住倒是无所谓,记住的是孩子的属相就可以了。因此,属相起到了强化记忆的作用。这种对年龄特殊的记忆方法成为我国民俗文化的一大特色。由于天干十位,地支十二位,所以每过十二年就是一个小循环,每过六十年就是一个大循环(一个花甲子)。这就是说人人每过十二年就会遇到与自己出生那年相同的属相年,这就是人们所说的本命年。

人逢本命年对红颜色特别钟爱。本命年的红色讲究应该是源于中国汉民族传统文化对于红色的崇拜。在汉族的旧式婚礼中,红花轿、红色穿戴的新娘、红灯笼、红地毯、红蜡烛,一片红光笼罩。在古代,军队打了胜仗,要派专人手执红旗报捷,学子们考取了功名要披红戴花,京剧中红色脸谱只有忠勇之神关云长才有权享用。汉民族把红色视为喜庆、成功、忠勇和正义的象征,尤其认为红色有驱邪护身的作用。因此在大年三十,人们便早早地穿上红色内衣,或系上红色腰带,有的随身佩带的饰物也用红丝绳系挂,来迎接自己的本命年。认为这样才能趋吉避凶,消灾免祸。

人逢本命年还有拜祭“本命神”的风俗。北京的白云观内有个元辰殿,里面供奉着“六十甲子神”。每年的正月上旬这里的香火都很旺,来这里上香的人都会向各自的本命星辰烧香礼拜,祈求平安。本命神的说法来源于道教。作为中国土生土长的宗教,道教自然与天干、地支、十二生肖有着天然的亲和关系。对于本命神,有的地方叫“本命守命星君”,有的叫“本命元辰”,统称为六十甲子神。以甲子年为首,六十年内不同年份出生的人都能找到属于自己的本命神 。如民族英雄岳飞生于公元一一零三年,夏历癸未年,他的本命星君为“癸未太岁魏仁大将军”。按照道教说法,修真炼性须致力于本命元辰,本命年或平常年份礼拜本命元辰,会消灾获福,成为一种习俗流传至今。

古人认为,人的一生,上至帝王将相,下至百姓走卒都会有个七灾八难,民间普遍也认为本命年为凶年,是人的生命历程中的一道“坎”。这种喻示无疑会对人的心理发育产生着巨大的影响,因此人们趋吉避凶的心态有如与生俱来。人们为什么对本命年有这种畏惧心理呢?

 本命年为什么会在芸芸众生的心灵中有这么强的感召力?如果说这是在很大程度上是受到了我国传统文化中命理学说的影响的话,有趣的是在众多的命理书籍中还未发现有关论述,命理书中对“元辰”的定义与道教也是大相径庭;如果说这种畏惧心理是封建迷信作崇的话,但生活中确实有人在本命年遇到了多多少少不遂心的怪事,有的人也认为在本命年会做一些荒唐事。刘心武在《关于本命年》一文中也认为,从人的心理发育的角度上看,本命年在人的生命进程中往往会成为一个大“坎儿”,构成了一个危险期。

 对于本命年的看法,众说纷纭,孰是孰非,难有定论。但是“本命年”现象确实是民俗研究上的一个空白点。

回头想想,这半年真的很不顺当。光感冒就犯了3次。心情也一直都不咋地,好象着了什么道似的。难道真的是应验了本命年为凶年,是人的生命历程中的一道“坎”这句话吗?

有点恐怖的说。*~*

 
[评论 (3)]
 
 
#2006年6月25日
花开花落
16:46

天气不好。最近几天常常起雾,很浓很厚。天阴沉沉的,心情突然不太好。

看了一部电影《完美情人》,好好笑。笑完之后,心里依然没着没落的。终于不想再待下去了。累了。决定去找Emma,打了电话,没有接通。打给Ivan,关机。再打给杨华,还是关机。无奈,决定直接杀到Emma宿舍。去了,没人,被活生生的堵在门口了。

从Emma宿舍下来,打了个电话给大黄。聊了几分钟,终究还是自己在网球场边上发了一会儿呆。越来越冷,又跑了回来。

突然觉得生活有点没劲。越来越浮躁了。在某年某月某日的下午,我一个人在网球场边上发呆,想着一些形而上学的问题。很怕自己对什么都没有兴趣,这种状态让我对生活失去热情。突然觉得做什么都没什么意义。读书?吃饭?聊天?工作?睡觉?看电影?好无聊。

宿舍楼下的蔷薇开了又谢了。开得茂盛的时候,白的,粉的,一片一片,很漂亮,郁郁的香气,很好闻。之后,下了几场雨。看见一地的花瓣,落在水畦里,风吹过,一片的涟漪。现在,只剩下为数不多的几朵了。

时间过得真快,一转眼一个月又过去了,看看日志,似乎6月份是一片空白。半年又过去了。暑假又要到了。回头看看,这半年似乎不太顺利。不过莞尔一笑,过去了就过去了,不会再回来。

最近喜欢听爱尔兰音乐,风笛的声音很纯净。在这么干净的音乐声中,一颗飘浮不定的心跟着沉淀下来。有些悲哀的味道。曾经,浮躁的心离我很遥远。然而却在不知不觉中跟着变成了这般模样。不知何时何地,什么东西搅动了心底那块平静的湖泊。

电脑换了张桌面。向日葵。一大片一大片。想起《春天华尔兹》里青山岛的油菜花,也是这般一大片一大片的黄,美丽的令人沉醉。

换个心情吧。渴望阳光的味道。

 
[评论 (0)]
 
 
 
中华部落阁 www.mblogger.cn 版权所有
Copyright Mandy 2000-2006, All Rights Reserved