ehm ich mein du kannst das mit MouseGetPos machen und dann halt immerwieder neu zeichnen mit den neuen koordinaten, kenn mich aber net gut mit GDI+ aus, aber wäre meine Idee das so zu machen.
Beiträge von AltairKD
-
-
Meinst du so?
[autoit]#include <EditConstants.au3>
[/autoit][autoit][/autoit][autoit]
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>$frmMain = GUICreate("Datenbank", 738, 383, 494, 302)
[/autoit][autoit][/autoit][autoit]
$Label1 = GUICtrlCreateLabel("Suchen:", 16, 16, 51, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$txtSuchen = GUICtrlCreateInput("", 88, 16, 553, 21)
GUICtrlSetBkColor(-1, 0x9DB9EB)
GUICtrlSetCursor(-1, 2)
$ListView1 = GUICtrlCreateListView("Vorname:|Nachname:|Straße:|Hausnumer:|Plz:|Ort:|Telefon:", 16, 48, 705, 297)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 4, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 5, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 6, 100)
$cmdSuchen = GUICtrlCreateButton("Suchen", 648, 16, 75, 25, $WS_GROUP)
$cmdHinzu = GUICtrlCreateButton("Hinzufügen", 24, 352, 123, 25, $WS_GROUP)
$cmdEdit = GUICtrlCreateButton("Editieren", 176, 352, 123, 25, $WS_GROUP)
$cmdSave = GUICtrlCreateButton("Speichern", 328, 352, 123, 25, $WS_GROUP)
GUISetState(@SW_SHOW)$frmAdd = GUICreate("Hinzufügen", 449, 160, 596, 326)
[/autoit][autoit][/autoit][autoit]
$Label1 = GUICtrlCreateLabel("Vorname:", 8, 8, 49, 17)
$txtVorname = GUICtrlCreateInput("", 64, 8, 121, 21)
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label2 = GUICtrlCreateLabel("Nachname:", 224, 8, 59, 17)
$txtNachname = GUICtrlCreateInput("", 304, 8, 121, 21)
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label3 = GUICtrlCreateLabel("Straße:", 16, 48, 38, 17)
$txtStrasse = GUICtrlCreateInput("", 64, 48, 121, 21)
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label4 = GUICtrlCreateLabel("Hausnummer:", 216, 48, 69, 17)
$txtHausnummer = GUICtrlCreateInput("", 304, 48, 121, 21)
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label5 = GUICtrlCreateLabel("PLZ:", 24, 88, 27, 17)
$txtPLZ = GUICtrlCreateInput("", 64, 88, 121, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label6 = GUICtrlCreateLabel("Ort:", 264, 88, 21, 17)
$txtOrt = GUICtrlCreateInput("", 304, 88, 121, 21)
GUICtrlSetBkColor(-1, 0xA6CAF0)
$Label7 = GUICtrlCreateLabel("Tele.:", 24, 128, 31, 17)
$txtTele = GUICtrlCreateInput("", 64, 128, 121, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
GUICtrlSetBkColor(-1, 0xA6CAF0)
$cmdHinzu2 = GUICtrlCreateButton("Hinzufügen", 352, 128, 75, 25, $WS_GROUP)
GUISetState(@SW_HIDE)$irs = IniReadSection("Datenbank.ini", "Datenbank")
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
If Not @error Then
For $i = 0 To $irs[0][0] - 1
$read = IniRead("Datenbank.ini", "Datenbank", $i, '')
If $read <> '' Then GUICtrlCreateListViewItem($read, $ListView1)
Next
EndIfWhile 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $cmdHinzu
GUISetState(@SW_SHOW, $frmAdd)
Case $cmdHinzu2
$lvtext = GUICtrlRead($txtVorname) & "|" & GUICtrlRead($txtNachname) & "|" & GUICtrlRead($txtStrasse) & "|" & GUICtrlRead($txtHausnummer) & "|" & GUICtrlRead($txtPLZ) & "|" & GUICtrlRead($txtOrt) & "|" & GUICtrlRead($txtTele)
GUICtrlCreateListViewItem($lvtext, $ListView1)
GUISetState(@SW_HIDE, $frmAdd)
Case $cmdSave
$irs = IniReadSection("Datenbank.ini", "Datenbank")
If @error Then
Dim $irs[1][1]
$irs[0][0] = 0
EndIf
IniWrite("Datenbank.ini", "Datenbank", $irs[0][0], $lvtext)
Case $cmdSuchen
$suchterm = GUICtrlRead($txtSuchen)
$gefunden = _GUICtrlListView_FindInText($ListView1, $suchterm)
_GUICtrlListView_ClickItem($ListView1, $gefunden)
Case $txtOrt
EndSwitch
WEnd
hab nur die 3zeilen nach case $cmdSuchen eingefügt. -
Danke Danke Black Skorpi, hatte gestern schon persönlich mit SEuBo geredet der hat mir das gleiche empfohlen ;). Es läuft jetzt alles. Nochmals Danke an alle.
-
Wie gestern persönlich besprochen SEuBo poste ich hier alle(bzw. erstmal nur die von den Laserdruckern) Inf-Dateien um die Automatische auslesung anzupassen. Dazu noch ein fettes Dankeschön an SEuBo für die Hilfe.
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. -
d.h. für mich quasi die Fuck funktionen umschreiben?
-
Also bei mir tut sich rein garnix egal was ich wie einstelle ich sehe einfach null, nochnichtmal die GUI. ????

-
der aktuelle stand ist wie er war kann ja garnicht weitermachen da das auslesen nicht funktioniert. -.-
Bei dir funktioniert es wahrscheinlich bei ein oder zwei(wie hier auch) aber da hier ja nicht nur 2 verschiedene drucker installiert sind im Haus sondern ca. 150 gibt es auch dem entsprechend viele verschiedene Inf-Dateien. Und das auslesen müsste ja leider bei jeder funktionieren. Aber so langsam denk ich das ich einfach meinen Praktikanten die Inf-Dateien gebe und er soll sich da mal durcharbeiten und mir die Druckernamen raussuchen ;). Das funktioniert wenigstens auf unkomplizierte weise =).
-
Hi,
ich bin dabei ein kleines script zu schreiben was mir doppelte Dateien auf den Computer in ein Array speichert und dann in eine ListView packen soll jedoch dort scheitert es komicherweise schon. -.-
Ich bekomme folgende Fehlermeldung:
C:\Programme\AutoIt3\Include\GuiListView.au3 (520) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
DllStructSetData($tBuffer, "Text", $aItems[$iI][0])
DllStructSetData($tBuffer, "Text", ^ ERRORDas Script habe ich anbei gehangen, bin dankbar für jeden lösungsvorschlag.
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. -
[autoit]
Global $sRead, $aKundenNr
[/autoit]
$sRead = FileRead(@ScriptDir & "\kdnr.txt")
$aKundenNr = StringRegExp($sRead,'abbr="KDnr">([^&]+)<',3)
If Not @error Then MsgBox(0,"",$aKundenNr[0])probier das mal. Ungetestet, weil nur eben im Browser getippt.
LG SEuBo, mit Altair's Account
-
Muss den anderen hier zustimmen, sehr saubere Arbeit und cooles Spiel.
-
Puh, habe Die GLFuncs.au3 irgendwo im Internet gefunden gehabt, wo genau weiß allerdings leider nicht mehr.
-
Ist aufjedenfall schon ne coole idee, und gut umgesetzt.
-
Ganz cool. Mit mehreren Kreisen wäre es auch net schlecht.

-
Das Problem was ich habe ist das ich nicht Automatisch den passenden Druckernamen der für die Installation per Inf benötigt wird rausfinden kann. Da es zwa vorschriften gibt aber die Variablen jeder Herrsteller selbst wählen kann, kann ich nicht in jeder nach der gleichen suchen um den Druckernamen zu kriegen, da wie bereits erwähnt fast jeder Herrsteller andere Namen benutzt.
-
genaues lesen hilft EM.
Ich habe ja geschrieben das er es mit ALT+A machen will es aber schon nur mit ALT funktioniert.
-
Ja SEuBo's lösungsvorschläge haben leider auch nicht ganz funktioniert.
Das problem liegt einfach darinn das es keine genauen vorschriften gibt wie eine Inf-Datei auszusehen hat. Es ist nur das schema vorgeschrieben also:
Wie jedoch die Variablen heißen kann sich jede Firma selbst aussuchen, und somit kann man nicht immer nach den gleichen schema die Dateien durchsuchen, da man nie weiß in wie die Variable heißt in dem der Druckername gespeichert ist.
-
Hi, habe mal nach längerer Pause wieder mit OpenGL angefangen und erstmal eine Farbpyramide gemacht.
Die benötigte GLFuncs.au3 ist unten beigefügt. Ich war selber wieder überracht wie wenig zeilen dazu nötig waren ;).
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. -
Aber trotzdem ist es doch von dir so geplant gewesen das erst [ALT] + [A] den freeze aufruft und nicht schon nur [Alt] oder?
-
Wäre echt megahappy wenn jemand eine Lösung für mein Problem finden könnte, da mir nix mehr einfällt ausser wirklich alle benötigten .inf-Dateien per hand durchzugehen um die Druckernamen rauszufinden und diese in mein Script einzupflegen.
-
Soweit schon gut umgesetzt. Allerdings zoomt die Lupe auch den bereich innerhalb der lupe selbst, und das hat zu folge das es möglich ist einen gezoomten bereich unendlich oft zoomen zu lassen und somit ist nichts mehr erkennbar.(Siehe Bild unten.!!) Und die Hotkeys funktionieren bei mir nicht richtig, z.B. für freeze brauche ich nur einmal »ALT« Taste drücken, und kann somit die anderen nicht nutzen.
[Blockierte Grafik: http://i41.tinypic.com/kbd26e.jpg]