Du bist nicht angemeldet.

Kontrollzentrum

Spenden

Jeder Euro hilft uns, euch zu helfen.

Oder per Überweisung:
Inhaber: Rene Suhle
Bank: Postbank Stuttgart
BLZ: 60010070
Konto: 439038705
Verwendungszweck: autoit.de
Bitte schickt mir dann ne kurze Nachricht!
NEU:

Downloads

Lieber Besucher, herzlich willkommen bei: .: autoit.de :. - Das deutsche AutoIt-Forum. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

1

Mittwoch, 19. November 2008, 22:45

BMyMind

Hi!

UPDATE: Version 1.0 Beta 1

Mal wieder was für mein "Privatforum" :D.

BMyMind heißt das gute Stück (ich liebe den Moment, wo ich anfangen will zu coden und Netbeans geradezu ultimativ einen Projektnamen verlangt... die Kreativität ist einfach immer unterirdisch).

Man kann damit alle möglichen Arten von Daten verwalten. Der Vorteil für den User ist, dass er es unter einer (hoffentlich) intuitive Oberfläche tun kann. Die Definition der Datenbank geschieht indirekt über eine XML-Datei. In dieser Datei legt man fest, wie die Daten präsentiert werden sollen und verknüpft sie (was in den allermeisten, einfachen Fällen BMyMind selbst erledigt).
Es gibt eine Vielzahl vorgefertigter Typen, die die Präsentation der Daten deutlich über das Niveau einer tabellenbasierten Datenbank heben. So lassen sich beispielsweise Daten in beliebigem Format darstellen und bequem aus einem Kalender wählen oder das Alter aus einer Spalte berechnen, die ein (Geburts-)Datum enthält.

Ein realistisches Beispiel einer Ausgangsdatei sieht folgendermaßen aus:

  Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?xml version="1.0" encoding="UTF-8"?>
<warehouse>
    <tab title="Personendaten">
    	<item type="image" title="Bild" maxHeight="100" source="Bild" />
		<item type="text" title="Vorname" primaryKey="yes" searchResult="yes" source="Vorname" />
        <item type="text" title="Nachname" primaryKey="yes" searchResult="yes" source="Nachname" />
        <item type="text" title="Geburtsname" source="Geburtsname" />
		<item type="text" title="Weitere Vornamen" source="Weitere_Vornamen" />
		<item type="text" title="Rufname" source="Rufname" />
		<item type="space" height="10" />
		<item type="onechoice" subType="combo" autocomplete="yes" title="Geschlecht" options="unbekannt;männlich;weiblich" default="unbekannt" free="no" source="Geschlecht" />
		<item type="space" height="10" />
        <item type="date" title="Geburtsdatum" internalDateFormat="yyyy-MM-dd" externalDateFormat="EEEEEEEEE, dd.MM.yyyy" searchResult="yes" source="Geburtsdatum" />
		<item type="age" title="Alter" source="Geburtsdatum" internalDateFormat="yyyy-MM-dd" options="y" text="Jahre" />
	</tab>

	<tab title="Kontakt">
		<item type="address" title="Adresse" source="Adresse;PLZ;Ort" mapLink="yes"/>
		<item type="onechoice" subType="combo" autocomplete="yes" title="Bundesland" options="unbekannt;Baden-Württemberg;Bayern;Berlin;Brandenburg;Bremen;Hamburg;Hessen;Mecklenburg-Vorpommern;Niedersachsen;Nordrhein-Westfalen;Rheinland-Pfalz;Saarland;Sachsen;Sachsen-Anhalt;Schleswig-Holstein;Thüringen" free="no" default="unbekannt" source="Bundesland" />
		<item type="onechoice" subType="combo" title="Land" options="Deutschland" free="yes" default="Deutschland" source="Land" />
		<item type="longtext" title="Frühere Adresse" height="60" source="Frühere_Adresse" />
		<item type="space" height="15" />
		<item type="text" title="Telefon (Festnetz)" source="Telefon_Festnetz" />
		<item type="text" title="Telefon (Handy)" source="Telefon_Handy" />
	</tab>

	<tab title="Persönliches">
		<item type="multichoice" subType="checkbox" title="Freundeskreis" options="Verwandtschaft;Uni" columns="3" titleStyle="boxed" source="Freundeskreis" />
		<item type="space" height="10" />
		<item type="custom_list" title="Hobbys" source="Hobbys" height="100" optionsStyle="mini" />
	</tab>

    <tab title="Online">	
        <item type="email" title="E-Mail 1" source="E-Mail" searchResult="yes" />
        <item type="email" title="E-Mail 2" source="EMail_2" />
        <item type="email" title="E-Mail 3" source="EMail_3" />
		<item type="space" height="10" />
        <item type="custom_list" title="Nicknamen" source="Nicknamen" />
		<item type="space" height="10" />
        <item type="text" title="ICQ-Nummer" source="ICQNummer" />
        <item type="text" title="Yahoo Messenger" source="Yahoo_Messenger" />
        <item type="text" title="MSN Messenger" source="MSN_Messenger" />
        <item type="text" title="Skype" source="Skype" />
        <item type="text" title="AIM" source="AIM" />
	<item type="space" height="10" />
        <item type="link" title="StudiVZ" source="StudiVZ" />
        <item type="link" title="Link" source="Link" />
    </tab>

    <tab title="Ausbildung">
		<item type="onechoice" subType="combo" autocomplete="yes" title="Ausbildungstyp" options="unbekannt;Universitätsstudium;Fachhochschulstudium;Berufsausbildung;Sonstiges" free="no" source="Studium" default="unbekannt">
			<event onAlways="" action="hide" options="id:1;id:2;id:3" />
			<event onDataEquals="Universitätsstudium" action="show" options="id:1" />
			<event onDataEquals="Fachhochschulstudium" action="show" options="id:1" />
			<event onDataEquals="Berufsausbildung" action="show" options="id:2" />
			<event onDataEquals="Sonstiges" action="show" options="id:3" />
		</item>
		
		<item type="onechoice" subType="combo" id="1" title="Hochschule" autocomplete="yes" options="unbekannt;Universität Würzburg" free="yes" default="unbekannt" source="Hochschule" />
		<item type="onechoice" subType="combo" id="1" title="Fachrichtung" autocomplete="yes" options="unbekannt;Informatik" free="yes" default="unbekannt" source="Fachrichtung" />
		<item type="text" id="1" title="Matrikelnummer" source="Matrikelnummer" />

		<item type="text" id="2" title="Ausbildungsberuf" source="Ausbildungsberuf" />
		<item type="text" id="2" title="Ausbildungsbertrieb" source="Ausbildungsbertrieb" />
		
		<item type="longtext" id="3" heigth="50" title="Ausbildungsdetails" source="Ausbildungsdetails" />
	</tab>
	
	<tab title="Arbeit">
        <item type="text" title="Berufsbezeichnung" source="Berufsbezeichnung" />
        <item type="longtext" title="Firma" source="Firma" />
    </tab>
	
    <tab title="Sonstiges">
        <item type="longtext" title="Notizen" height="250" source="Notizen" />
        <item type="last_changed" title="Letzte Änderung" internalDateFormat="yyyy-MM-dd" externalDateFormat="EEEEEEEEE, dd.MM.yyyy" source="Letzte_Änderung" />
    </tab>
</warehouse>


Ein paar Screenshots der auf dieser Basis laufenden Datenbank:


Neue Datensätze lassen sich hinzufügen und vorhandene verändern und löschen. Es können sogar neue <item>s in der XML-Datei angelegt werden, die dann bei einem Neustart von BMyMind direkt in die Datenbank wandern und für Datensätze zur Verfügung stehen.

Die Suche lässt sich auf bestimmte Felder einschränken und die angezeigten Spalten im Ergebnisfeld über die XML-Datei frei kombinieren.

Bisher sind folgende Typen verfügbar:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
address
age
custom_list
date
email
file_link
image
last_changed
link
longtext
multichoice
onechoice
space
text
updown
yesno


Neue Typen lassen sich einfach in Java erstellen dynamisch laden (bisher nur aus dem jar-File, später auch von außerhalb).

Man könnte hiermit z.B. Bücher verwalten, Kontakte, CDs, ... Probiert es aus!

Im Hintergrund läuft eine Derby-Datenbank, die Komponenten entstammen der SwingX-Bibliothek und der Rest ist die zweitschönste Sprache der Welt (nach Finnisch :D): Java!

Ich veröffentliche dieses Programm unter der GPLv3.
Im Anhang einmal eine kompilierte Version und einmal als NetBeans-6.5-Projekt, das die Bibliotheken aus der kompilierten Version benötigt.

Update 0.92:
* Behoben: Sortieren der Suchergebnistabelle führte zu falscher Klickinterpretation
* Neu: Typen "last_changed" und "file_link"
* Neu: style="boxed" und style="titled" (default) für alle bisherigen Typen statt nur für multi_checkbox

Update 0.95:
* Behoben: Einige Bugs
* Neu: Dynamik: Es können abhängig von Eingaben Felder verdeckt oder angezeigt werden.

Update 1.0 Beta 1:
- Verschlüsselung
- Import von CSV-Daten
- Derby statt SQLite
- address (mit Link zu Google Maps)
- Verarbeitung von Typen, die auf mehrere Tabellenspalten lesen und/oder schreiben
- freetext -> longtext
- multichoice und onechoice mit subTypes für die verschiedenen Controls (checkbox, combo, list)
DOWNLOAD

Tests wären sehr willkommen!

peethebee
»peethebee« hat folgende Dateien angehängt:

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »peethebee« (29. Dezember 2008, 04:21)


GtaSpider

Moderator

Registrierungsdatum: 1. Januar 2006

Wohnort: Kiel

Beruf: Schüler

  • Private Nachricht senden

2

Mittwoch, 19. November 2008, 23:56

Hallo

Wow, super. Wie lange hast du dafür gebraucht?
Ich meine, gutes Design aber trotzdem sehr übersichtlich. Bei "Bundesland" fehlt mir Schelswig Holstein. Aber ansonsten Top :thumbsup:
Mach weiter so mit Java :)
Dann kannst du bald genau so viel wie ich mit AutoIt :thumbup: :D

Mfg Spider

peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

3

Donnerstag, 20. November 2008, 00:07

Danke für das Lob :).
Programmiert von 14.11. bis heute neben Uni ;).
Das Schöne ist eben, dass du auch dein Bundesland selbst hinzufügen kannst in der XML-Datei und es erscheint sofort als Option in der GUI ;).

peethebee

Registrierungsdatum: 30. August 2008

  • Private Nachricht senden

4

Donnerstag, 20. November 2008, 01:00

Werds mir die Tage mal anschauen.
Die GUI auf den Screenshots schaut super aus.

GUIs mit Java sind doch ein Graus, da würde ich vorher durchdrehen, bis das so gut aussieht 8| :pinch:

peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

5

Donnerstag, 20. November 2008, 01:23

Hallo,

Bin gespannt auf dein Testergebnis ;).

GUIs in Java... Hm, ja, kein ganz leichtes Thema. Ist so ein bisschen wie LaTeX oder Linux: Man fragt sich am Anfang, warum es so kompliziert sein muss, aber wenn man das Konzept dahinter verstanden hat und glaubt, dass die Software gute Entscheidungen trifft, dann kann man schöne Ergebnisse erzielen.
Die Flexibilität von JTables oder LayoutManagern ist sensationell -- und die SwingX-Komponenten im Windows-Look tun ihr übriges ;).

peethebee

p.s. gerade kurz "space", "link" und "email" implementiert, weil es so schön einfach ist ;).
Edit: Nach langem Kampf hat sich auch "custom_list" ergeben, was beispielsweise eine Hobbyliste ermöglicht, die man selbst füllen, ändern und löschen kann.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »peethebee« (20. November 2008, 17:07)


peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

6

Montag, 29. Dezember 2008, 04:17

Version 1.0 Beta 1 hochgeladen, jetzt mit Derby statt SQLite, Import von CSV-Daten und Verschlüsselung sowie kleinen Fixes, z.B. ein Adressfeld mit Google-Maps-Anbindung. Außerdem die Typen erweitert und vereinheitlicht.

Vielleicht mag es ja jemand (noch mal) testen :).

peethebee

Registrierungsdatum: 28. Oktober 2008

Wohnort: Gevelsberg

Beruf: Schüler

  • Private Nachricht senden

7

Montag, 29. Dezember 2008, 08:05

Hallo!

Das ist genau das, was ich gesucht hab :D Ich bin Münzensammler(hört sich vllt. dämlich an, ist aber so ;) ) und da brauhct man sowas! Danke.

Testbericht folgt :)

Meine Projekte:
Maus-Skript|Tutorial-Engine|µit-light - Kontrollzentrum|MathEx.au3


Registrierungsdatum: 28. Oktober 2008

Wohnort: Gevelsberg

Beruf: Schüler

  • Private Nachricht senden

8

Dienstag, 30. Dezember 2008, 13:01

Hallo!

ICh hab da mal ne Frage: Wie genau bearbeite ich die Spalten in der Datenbank? Ich kenn mich nicht so mit Java aus, nur mit MySQL oder MS Access oder so...

Aber von der GUI her: Super :thumbsup:

Meine Projekte:
Maus-Skript|Tutorial-Engine|µit-light - Kontrollzentrum|MathEx.au3


peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

9

Dienstag, 30. Dezember 2008, 13:27

Hi!

Du nimmst die Kontakte.xml aus dem Ordner databases und baust sie nach deinen Wünschen um.
Im Idealfall musst du nicht mehr machen, also kein Java schreiben.
Wenn du fertig bist, lädst du die Datenbank in BMyMind. Später die XML-Datei zu erweitern ist kein Problem, die Spalten werden dann "nachgetragen" :).

Viel Erfolg,
peethebee

Registrierungsdatum: 28. Oktober 2008

Wohnort: Gevelsberg

Beruf: Schüler

  • Private Nachricht senden

10

Dienstag, 30. Dezember 2008, 13:31

Dankeschön!

Dann mach ich mir mal die Mühe, und schreib dafür ein AutoIT-Programm, wenn du nichts dagegen hast ;)

Meine Projekte:
Maus-Skript|Tutorial-Engine|µit-light - Kontrollzentrum|MathEx.au3


peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

11

Dienstag, 30. Dezember 2008, 13:46

Kannst du gerne tun ;). Aber erst mal testen :D.

peethebee

Registrierungsdatum: 6. August 2008

Wohnort: München

Beruf: IT "Hausmeister" oder auch sysadm genannt.

  • Private Nachricht senden

12

Mittwoch, 29. April 2009, 20:08

FYI
der Download von upload.to funktioniert nicht.
---
In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
---

peethebee

Administrator

  • »peethebee« ist der Autor dieses Themas

Registrierungsdatum: 7. Dezember 2005

Wohnort: Bayern

Beruf: Schreiberling

  • Private Nachricht senden

13

Donnerstag, 30. April 2009, 15:48

Danke für den Hinweis :).
Aktuelle Version mit Text und Screenshot unter http://web.slzm.de/blog/programmieren/bmymind-10-beta-2/.

peethebee