jHardDiscSpy Festplatten-Monitor

Posted: Oktober 5th, 2010 | Filed under: Software | Tags: , , , , , , | 1 Comment »

Habe mal wieder Lust gehabt etwas zu erschaffen. Dabei herausgekommen ist der JNotify basierende Festplatten-Monitor. JNotify und jHardDiscSpy unterstützen folgende Plattformen:

  • Windows (2000 oder höher)
  • Linux (2.6.14 oder höher)
  • Mac OS X (10.5 oder höher)

Funktionen

  • Loggt alle Festplatten und Wechseldatenträger – Aktionen mit (Voraussetzung Lese & Schreiberechte)
  • Filtermöglichkeit der Log Daten per Regulären Ausdruck

Screenshots

13f41842 c4563855 3700b6a0

Download

http://jharddiscspy.mynotiz.de/download/jHardDiscSpy_1.2.zip


Java JList automatisches nach unten scrollen nach hinzufügen

Posted: September 26th, 2010 | Filed under: Programmieren, Tutorials | Tags: , , , , , , , | No Comments »

Ich schreibe gerade an einem Programm welches alle Festplattenaktivitäten in einer JList auflistet. Da sehr viele Aktionen anfallen möchte ich dass die, von einer ScrollPane umgebene, JList automatisch nach unten scrollt sobald ein Eintrag hinzugefügt wird. Quasi ein JList Auto-Scroll Down. Das Java-Beispielprogramm sieht folgendermaßen aus.

Screenshot

jlist_autoscroll_example

Quellcode

Und hier der erlösende Quellcode dazu.

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;

public class Main extends JFrame {

  private JList jList;
  private JScrollPane jScrollPane;
  private DefaultListModel defaultListModel;
  private JButton jButton;

  public Main() {
    super();
    initGUI();
  }

  private void initGUI() {
    try {
      BorderLayout thisLayout = new BorderLayout();
      this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
      this.getContentPane().setLayout(thisLayout);

      defaultListModel = new DefaultListModel();

      jList = new JList();
      jList.setModel(defaultListModel);

      jScrollPane = new JScrollPane();
      jScrollPane.setPreferredSize(new java.awt.Dimension(392, 245));
      jScrollPane.setViewportView(jList);
     
      jButton = new JButton();
      jButton.setText("add");
      jButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent evt) {
          // Wichtig ist dass das Hinzufügen alles in einem seperaten
          // Thread abläuft damit die Oberfläche nicht hängen bleibt
          // und damit es keine Fehler beim dem Scrollen gibt(IndexOutOfBoundsException).
          SwingUtilities.invokeLater(new Runnable() {
            public void run() {
              // Element dem DefaultListModel hinzufügen.
              // Angezeigt wird dann die toString Methode des
              // Objektes, in diesem Fall ist das der String
              // selbst.
              defaultListModel.addElement(new String(System.currentTimeMillis() + ""));
             
              // Anschließend den letzten index des Model sichtbar setzen,
              // dies Bewirkt den automatischen Scroll nach unten.
              jList.ensureIndexIsVisible(defaultListModel.size() - 1);
            }
          });
        }
      });

      this.getContentPane().add(jScrollPane, BorderLayout.CENTER);
      this.getContentPane().add(jButton, BorderLayout.SOUTH);

      this.setTitle("JList Auto-Scroll Beispiel");
      this.pack();
      this.setSize(400, 300);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        Main inst = new Main();
        inst.setLocationRelativeTo(null);
        inst.setVisible(true);
      }
    });
  }
}

Download

Main.java

Ich hoffe ich konnte einigen von euch helfen.


JQuery UI Dialog – Buttons anpassen

Posted: September 25th, 2010 | Filed under: Programmieren, Tutorials | Tags: , , , , , | 1 Comment »

Gestern wollte ich etwas an einem JQuery UI Dialog anpassen, was scheinbar von Seitens der UI nicht ohne weiteres vorgesehen ist. Ich wollte den Buttons im Dialog seperate ID’s zuweisen, um sie später über Selektoren ansprechen zu können.

Eine Lösung, die ich hier im JQuery Forum gefunden habe nutzte mir auch nichts, da sich auf meiner Seite mehrere unterschiedliche Dialoge befanden und ich somit nie sicher sein konnte, das auch wirklich der richtige Button angesprochen wird.

Nach weiteren erfolglosen Versuchen habe ich dann einfach die eigentlich JQuery UI Funktion überschrieben und sie somit um meine gewünschte Funktionen erweitert.

$(function() {
	(function() {
		var dialogPrototype = $.ui.dialog.prototype;
		var originalButtons = dialogPrototype._createButtons;
		dialogPrototype._createButtons = function(buttons) {

			originalButtons.apply(this, arguments);

			var $buttons = this.element.siblings('.ui-dialog-buttonpane').find('button');

			var i = 0;
			for ( var label in buttons) {
				var button = buttons[label];
				var $button = $buttons.eq(i);

				if (button.title) {
					$button.attr('title', button.title);
				}

				if (button.classes) {
					$button.addClass(button.classes);
				}

				if (button.id) {
					$button.attr('id', button.id);
				}

				i += 1;
			}
		}

	})();

	// Dialog
	$('#dialog').dialog( {
		autoOpen : false,
		width : 600,
		buttons : {
			"Ok" : function() {
				$(this).dialog("close");
			},
			"Cancel" : $.extend(function() {
				$(this).dialog("close");
			}, {
				classes : 'dismiss',
				title : 'Abbrechen',
				id : 'thisIsTheId'
			})
		}
	});

	// Dialog Link
	$('#dialog_link').click(function() {
		$('#dialog').dialog('open');
		return false;
	});
});

Ich hoffe, dass ihr etwas damit anfangen könnt. Ansonsten bis zu meinem nächsten Blogeintrag! 😉


Sharkoon 1337 Black Mauspad

Posted: September 22nd, 2010 | Filed under: Allgemein | Tags: , , , , , | 2 Comments »

Habe mir vor kurzem bei Amazon das 1337 Mauspad von Sharkoon bestellt. Ich dachte mir ich veröffentlich mal ein größeres Bild wie Amazon. Bei 200×200 Pixel kann man sich echt nur schwer vorstellen wie die Oberfläche des Mousepads aussieht. Diese ist ähnlich wie bei den altbekannten Stoff-Mousepads. Das 1337 ist extrem dünn und besitzt eine Unterseite aus rutschfestem Gummi.

IMG_3510

Ich bin sehr zufrieden mit dem Mousepad und kann es für ’nen 10er nur jedem empfehlen.


Sepia Effekt in Photoshop CS 5

Posted: September 22nd, 2010 | Filed under: Software, Tutorials | Tags: , , , , , | No Comments »

Ursprünglich ist Sepia ein braun- bis grauschwarzer Farbstoff der von den Sepien (eine Tintenfischordnung) gewonnen wird. Diese Farbwirkung kann man mit Photoshop realisieren. Der Sepia-Effekt wird sehr oft bei Bildern verwendet. Ich möchte nun zeigen wie einfach man diesen Effekt bei Photoshop verwenden kann.

Da das Originalbild relativ dunkel war habe ich erst mal an der Helligkeit und am Kontrast (Image->Adjustments->Brightness/Contrast) herumgespielt.

Anschließend habe ich den Sepia-Effekt realisiert. Dazu einfach in der Menüleiste auf Image->Adjustments->Photofilter

ae425ebd

Und anschließend Sepia ausgewählt. Die Dichte (Density) habe ich per Augenmaß auf 91% gestellt.

6a80de02

Wenn ihr das Originalbild eine Ebene tiefer gespeichert lässt könnt ihr anschließend per Ebenen-Transparenz die Stärke des Sepia-Effekts verstärken oder schwächen.

Vorher (Original)

IMG_3619

Nachher (Sepia)

IMG_3619_sepia


Pages: Vorherige Seite 1 2 3 ... 26 27 28 29 30 ... 50 51 52 Nächste Seite