House Egyedi megjelenítés és grafikus vezérlők eHouse Rendszer Automation – Jáva

Grafikus ábrázolása eHouse Otthon automatizálás kiterjeszti a fejlesztési környezet a rendszer, és lehetőséget teremt a független szoftverfejlesztő a végfelhasználóknak ofeHouse rendszer , társult vállalkozások és a vállalkozások számára, hogy hozzájáruljon egyénileg programozás JSE (Java) környezetben . eHouse for Java (eHouse4Java) kompatibilis az Android és a Windows Mobile könyvtárak , lehetővé teszi, hogy saját szoftvert központok és tabletták .
A könyvtár az alkalmazás sablon és lehetővé teszi:

  • betölteni a konfigurációs , a nevét a vezérlők , Kimenetek , Bemenetek , érzékelők , stb. .
  • biztosító kommunikációs rendszer vezérlő
  • vételére és dekódolására az adatkezelő állapot
  • Levél parancsok grafikusan (a vizuális tárgyak) vagy szöveges formában (a mező választható)
  • ellenőrzési rendszer segítségével WiFi , Internet , SMS , eMail
  • Grafikus megjelenítés és vezérlés – betölti a szöveges fájlt a grafikus objektumok kapcsolódó események végre kell hajtani (a eHouse rendszer) és a berendezések állapotok
  • Automatikus megjelenítés Az adatkezelő (szoba)

Visualization hozták létre java könyvtár ” hinta ” elemekkel egy ” JPanel ” , ” JButton ” stb. .
Ezek az objektumok automatikusan ” kettős – pufferelt ” , úgy, hogy a hatás a villogás megszűnik , ami nagyon bosszantó a felhasználó számára .
A felhasználó is beállíthatja a képet:

  • nagyítás és kicsinyítés
  • felköltözik , lefelé és oldalirányban
  • módosíthatja az aktuális nézet kiválasztásával ” Opciók ”
  • vissza a grafikus megjelenítő rendszer kiválasztásával ” Kilátás ”

Példa a vizualizáció eHouse rendszer:
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
Nagyítás és kicsinyítés végeztük használatával Scalable Vector Graphics (SVG) , úgy, hogy a kép nem veszíti a minőségét váltás után skála:
 Visszavonás szerkesztések

ÚJ! ;
irányítók státusz automatikusan megjelenik:
Az aktualizált számítógépes hálózaton keresztül vagy az interneten (TCP vagy UDP) – online (valós időben)
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
Ha kiválasztja a ” Opciók ” és a helyiség látható államok szabályzók és programok kiválasztásához .
Státuszának módosítása a bejövő UDP automatikusan rewizualizacjÄ ™:  Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
 Intelligens otthon vezérlés eHouse interneten grafika és megjelenítés - java nyílt forráskódú
Amellett, hogy láthatóvá egyedi tervezésű alapuló építészeti tervezése és telepítése intelligens otthon automatikusan létrejön a vizualizáció függetlenül mindegyik vezérlő a rendszer (különösen a RoomManagers és EthernetRoomManager – az egyes helyiség) .
Ez lehetővé teszi a független központok és vizualizációs minden szobához külön , anélkül, hogy unalmas, hogy hozzon létre projektet – alapú megjelenítő rendszer .
A CommManager (államok riasztó érzékelők , Ouputs)
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
A RoomManager és EthernetRoomManager:
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
A kazán vezérlő , behajtása CO (HeatManagera)
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
 Intelligens otthon ellenőrzés eHouse grafikus és vizualizációs automatikus online - java nyílt forráskódú
További információk találhatók a cikkeket szentelt programkönyvtárak eHouse4Android (eHouse for Android – Android Java) , amelyek lefordítják Java SE a kompatibilitás és az egyszerű szoftverfejlesztés különböző operációs rendszereken .
A forráskód
/ *
* Sablon alkalmazások grafikus megjelenítő rendszer , intelligens otthon eHouse
* Csak regisztrált felhasználóknak a rendszer eHouse , Együttműködő vállalatok, Minden jog fenntartva
*
* Szükséges Osztályok:
* Ehousecommunication . osztály – elküldheti az eseményeket a rendszer
* EhouseTCP . osztály – Inicializálása és karbantartása kommunikáció TCP / IP kontroller , Frissítés adatoknak a rendszerből történő be-és kimenetek
* StatusEhouse . osztály – adattárolás és vezérlő beállításainak , frissítés folyamatosan TCP / IP vezérlők ehouse1 (485)
* StatusCommManager . osztály – tárolja az aktuális adatok és beállítások adatkezelők , frissítés folyamatosan TCP / IP vezérlők ehouse2 (Ethernet)
* GraphicObject . osztály – tárolása grafikus objektumok
* Visualization . osztály – döntetlen grafikus objektumok (vonalak , ellipszisek , téglalapok) és a szolgáltatásokkal kapcsolatos események
*
* Application sablon tervezett grafikus megjelenítését eHouse rendszer
* Csak regisztrált felhasználók , Szállítók , Szövetkezetek Szerzői ISYS . En Minden jog fenntartva
*
* Kötelező osztályok:
* Ehousecommunication . osztály – küldés eseményeket a rendszer
* EhouseTCP . osztály – inicializálás és karbantartás TCP / IP kommunikációs vezérlő , frissítése aktuális státuszának vezérlők
* StatusEhouse . osztály – adatkezelők beállítások és adatok tárolására , az adatok frissítése (TCP / IP) a ehouse1 vezérlők (485)
* StatusCommManager . osztály – adatkezelők beállítások és adatok tárolására , az adatok frissítése (TCP / IP) a ehouse2 vezérlők (Ethernet)
* GraphicObject . osztály – grafikus adattároló objektumok
* Visualization . osztály – rajz grafikus objektumok (vonalak , Ellipszisek , téglalapok) és kezelési eseményeket hozzájuk kapcsolódó
* /
ehouse4java csomag ;
import java . AWT . * ;
import java . AWT . esemény . * ;
import javax . hinta . * ;
import javax . hinta . esemény . Changeevent ;
import javax . hinta . esemény . ChangeListener ;
Ehouse4java public class kiterjed JFrame eszközök ActionListener , ChangeListener {
/ **
* Class felelős inicializálásakor a rendszer állapotát , és hozzon létre
* Az alkalmazás főablakát . Munkagépek interfészek, amelyek támogatják az eseményt
* Társult gombokkal .
*
* Class felelős inicializálásakor állapotának osztályok és létrehozása
* Az alkalmazás főablakát . Végrehajtó interfészek support események
* Kapcsolódóan a gombokat .
* /
/ **
* Visualization tartalmazó objektum aktuálisan megjelenített nézet
* /
nyilvános megjelenítés Visualization ;
/ / Public vizualizációs lehetőségek ;
/ / Public vizualizációs TextEvents ;
/ **
* Raklap gombok támogató nagyítás , változó és a változó
* A feltüntetett nézet
* /
JButton ZoomPlusButton ;
JButton ZoomMinusButton ;
JButton LeftShiftButton ;
JButton RightShiftButton ;
JButton UpButton ;
JButton DownButton ;
JButton ExitB = null ;
JButton lehetőségek ;
JButton megnézése ;
JButton Back ;
JButton [] = new JButton ViewsB [MAX_VIEWS_COUNT] ;
/ **
* Panel minden gomb
* /
JPanel ZoomPanel ;
/ **
* Panel Megtekintések száma jelenleg tartalmazó vizualizáció
* /
JPanel viewpanel ;
/ **
* A panel tartalmazó csoportot gombok eléréséhez használt vezérlők államok ,
* Rendszer menetrendek tartozik . .
* /
JPanel optionspanel ;
/ **
* Oprional scrollpanes
* /
JScrollPane jsp1 ;
JScrollPane jsp2 ;
public static int buttonscounter ;
public int centerX ;
public int CenterY ;
public int prevCenterX ;
public int prevCenterY ;
public int Ycompensation ;
prevOffsetX int = 0 , prevOffsetY = 0 ;
kettős prevScaleX ;
kettős prevScaleY ;
nyilvános final kettős zoomfactor = 0 . 3 ;
public static Karakterlánc previousoptionsview = ” ” ;
/ **
* Létrehoz új forma Ehouse4java . Kezdeményezi állapotának osztályok és grafikus
* Összetevők főablakában .
* /
állami Ehouse4java () {
super ( ” EHouse ” ) ;
OnCreate () ;
setDefaultCloseOperation (JFrame . EXIT_ON_CLOSE) ;
/ **
* Kezdeményez minden grafikai elemek
* /
addComponentToPane (getContentPane ()) ;

setSize (400 , 400) ;
setLocation (200 , 0) ;
setMinimumSize (új dimenzió (200 , 200)) ;
setVisible (true) ;
prevCenterX = (int) Visualization . getBounds () . getCenterX () ;
prevCenterY = (int) Visualization . getBounds () . getCenterY () ;
}
/ **
* Kezdeményez valamennyi összetevő száraz grafikai panelek , gombok , görgetősávok , stb. . .
*
* @ Param ablaktábla
* /
public void addComponentToPane (Container ablaktábla) {

optionfirsttime = true ;

ExitB = new JButton ( ” Kijárat ” ) ;
ExitB . setActionCommand ( ” Kijárat ” ) ;
ExitB . addActionListener (e) ;
. . .
indexView int = 0 ;
ZoomPanel = new JPanel (új FlowLayout ()) ;
viewpanel . hozzá (ZoomPanel , BorderLayout . PAGE_END) ;
ZoomPlusButton = new JButton ( ” + ” ) ;
ZoomPlusButton . setActionCommand ( ” ZoomPlus ” ) ;
ZoomPlusButton . addActionListener (e) ;
ZoomPanel . add (ZoomPlusButton) ;
ZoomMinusButton = new JButton ( ” – ” ) ;
ZoomMinusButton . setActionCommand ( ” ZoomMinus ” ) ;
ZoomMinusButton . addActionListener (e) ;
ZoomPanel . add (ZoomMinusButton) ;
. . .
}
/ **
* Beavatottak és StatusEhouse StatusCommManager osztályok betöltés vezérlők
* Állapot
* /
public void OnCreate () { . . . }
/ **
* @ Param args a parancssori argumentumok
* /
public static void main (String args []) {
/ *
* Létrehozása és megjeleníti az űrlapot
* /
Jáva . AWT . EventQueue . invokeLater (új futtatható () {
public void run () {
Ehouse4java új () . setVisible (true) ;
}
}) ;
}
/ **
* Támogatja események meghívás kattintva gombra
*
* @ Param e
* /
@ Override
public void actionPerformed (ActionEvent e) {
kapcsoló (e . getActionCommand ()) {
ügy ” ZoomPlus ” :
prevOffsetX = ehousecommunication . Offsetx ;
prevOffsetY = ehousecommunication . Eltolások ;
ehousecommunication . ScaleX * = (1 + zoomfactor) ; / / * 100/zoomleve ;
ehousecommunication . Scaley * = (1 + zoomfactor) ; / / * 100/zoomleve ;
/ / Középre véli után rescalling
ehousecommunication . Offsetx + = (int) ((Visualization . getBounds () . getCenterX () + prevOffsetX) * zoomfactor) ;
ehousecommunication . Eltolások + = (int) ((Visualization . getBounds () . getCenterY () + prevOffsetY) * zoomfactor) + Ycompensation / (1 / (2 * zoomfactor)) ;
EhouseTCP . ReadViewFile (ehousecommunication . currentview) ; / / Számítsuk zoom
Megjelenítés . átfestés () ;
visszatérés ;
. . .
}
}
}