Das ist ein Studium auch
Beiträge von Scritch
-
-
Wenn du Praktika vorweisen kannst, ist das immer gut. Ob für Studium oder Ausbildung. Wenn du dich nicht entscheiden kann ob Ausbildung oder Studium, mache doch ein duales Studium. Du bekommst idR dein Studium von der Firma finanzierst, du wirst vergütet und du kannst zu 90% nach dem Studium in der Firma bleiben.
-
Was meinst du mit "ohne Studium keine Chancen hat"? Du denkst, dass, wenn du nicht studierst (jetzt mal egal welche Richtung) du keinen vernünftigen Job bekommst? Wenn das so ist: das ist Mumpitz! Eine Ausbildung z. B. zum Fachinformatiker für Systemintegration o. Ä. ist nicht weniger wert, als ein Studium. Ein Bekannter von mir, mit dem habe ich gelernt, hat einen 1A Job bei der Telekom, T-Systems bekommen.
Ich würde lieber eine Ausbildung machen, vll. in einem Betrieb (wie der Telekom), wo du auch Chancen hast, übernommen zu werden, als ein Studiengang zu wählen wo du nachher eine von Vielen bist die versuchen einen Job zu bekommen. -
Ich WILL das aber in meiner Schleife haben!!!!111elf
[autoit]
Funktionieren tuts ja:#include "MouseOnEvent.au3"
[/autoit][autoit][/autoit][autoit]_MouseSetOnEvent($MOUSE_WHEELSCROLLDOWN_EVENT, "MousePrimaryDown_Event")
[/autoit][autoit][/autoit][autoit]
Sleep(5000)Func MousePrimaryDown_Event()
[/autoit]
MsgBox(1, "lala", "lala")
EndFunc -
Ist auch das, was ich gerade brauche. Funktionieren tuts aber irgendwie nicht:
[autoit]#include <ButtonConstants.au3>
[/autoit][autoit][/autoit][autoit]
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include "MouseOnEvent.au3"#Region ### START Koda GUI section ### Form=
[/autoit][autoit][/autoit][autoit]
$Form1 = GUICreate("Form1", 468, 343, 192, 114)
$Group1 = GUICtrlCreateGroup("Ändern", 72, 72, 185, 105)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$plus = GUICtrlCreateButton("+", 336, 96, 27, 25, $WS_GROUP)
$minus = GUICtrlCreateButton("-", 368, 96, 27, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###While True
[/autoit]
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $plus
;~ GuiCtrlSetState($Search,$Gui_Focus)
GUICtrlSetPos ($Group1, 1, 1, 50, 50)
case $MOUSE_WHEELSCROLLDOWN_EVENT
MsgBox(1, "lala", "lala")
case $MOUSE_WHEELSCROLL_EVENT
MsgBox(1, "lala", "lala")
EndSwitch
wend -
Das habe ich gesucht, danke
Dennoch, möchte das jetzt wissen: Wie würde das denn mit dem Scrollrad der Maus funktionieren?
Und wie markiere ich ein Control? -
Ok, haste Recht. An die Möglichkeit hatte ich gar nicht geacht
Ich hatte norlich mal gelesen, wie man die Größe eines Controls ändert...
Habs aber vergessen :pinch: -
Um mein Skript nochmal kurz in Erinnerung zu rufen:
Spoiler anzeigen
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <array.au3>
#include <Misc.au3>
#include <file.au3>
#include <ListViewConstants.au3>
#include <ScreenCapture.au3>Global $objektepfad = @ScriptDir & "\Objekte\"
[/autoit] [autoit][/autoit] [autoit]
dim $aObjekte[9] = ["Tisch waagerecht", "Tisch senkrecht", "PC", "Telefon", "Bodendose", "LAN-Buchse", "Label", "GAA", "KAD"]
dim $positionen[1][5]
dim $positionenBackup[1][5] ;Hier wird beim Laden des Skriptes der Inhalt der .ini reingeschrieben und nicht verändert.
dim $nichtverschieben[10]
global $positionenspeicher = @scriptdir & "\positionen.ini" ;Sollen Änderungen nicht gespeichert werden, wird der Inhalt aus dem Backuparray geschrieben.
global $erneutladen = 0
dim $GSwechsel[1]$hWnd = GUICreate("Drag/Drop Controls", 1400, 900)
[/autoit] [autoit][/autoit] [autoit]$geschaeftstellen = GUICtrlCreateGroup("Geschäftsstelle auswählen", 1230, 5, 150, 100)
[/autoit] [autoit][/autoit] [autoit]
$listegeschaeftsstellen = GUICtrlCreateCombo("GS auswählen", 1248, 32, 113, 25)
GUICtrlSetData($listegeschaeftsstellen, "Burg|Büsum", "GS auswählen")
$GSladen = GUICtrlCreateButton("Laden", 1248, 64, 115, 25, $WS_GROUP)$Objekte = GUICtrlCreateGroup("Objekte verwalten", 1230, 115, 150, 320)
[/autoit] [autoit][/autoit] [autoit]
$List1 = GUICtrlCreateList("", 1240, 146, 130, 240)
GUICtrlSetData($List1, "Tisch waagerecht|Tisch senkrecht|PC|Telefon|Bodendose|LAN-Buchse|Label|GAA|KAD")
$Button1 = GUICtrlCreateButton("Hinzufügen", 1240, 396, 130, 25, $WS_GROUP)$anderefunktionen = GUICtrlCreateGroup("Andere Funktionen", 1230, 445, 150, 180)
[/autoit] [autoit][/autoit] [autoit]
$exportieren = GUICtrlCreateButton("Grundriss exportieren", 1245, 470, 115, 25, $WS_GROUP)$grundrissgroup = GUICtrlCreateGroup("Grundriss", 5, 5, 1220, 890)
[/autoit] [autoit][/autoit] [autoit]guictrlsetstate($List1, $GUI_DISABLE)
[/autoit] [autoit][/autoit] [autoit]
guictrlsetstate($Button1, $GUI_DISABLE)
GUISetState(@SW_SHOW)GUISetState()
[/autoit]
$vUser32Dll = DllOpen("user32.dll")
While True
$msg = GUIGetMsg()
Switch $msg
$GSauswahl = GUICtrlRead($listegeschaeftsstellen)
Case $GUI_EVENT_CLOSE
$GSauswahl = GUICtrlRead($listegeschaeftsstellen)
$msg = MsgBox(3, "Änderungen speichern", "Sollen die Änderungen gespeichert werden?")
if $msg = 7 or 6 then
speichern($msg, $GSauswahl)
DllClose($vUser32Dll)
Exit
EndIf
Case $GUI_EVENT_PRIMARYDOWN ;Wenn linke Maustaste gedrückt wird...
$aMousePos = GUIGetCursorInfo($hWnd)
_ArraySearch($positionen, $aMousePos[4], 0, 0, 0, 0, 1, 0) ;Wenn die ID des Controls nicht gefunden, handelt es sich um ein Control was verwschoben werden darf
If not @error Then
$iControl = $aMousePos[4]
$aPos = ControlGetPos($hWnd, "", $iControl)
$iDist_X = $aMousePos[0] - $aPos[0] ;Wenn man verschiebt, wird dort gegriffen, wo man klickt
$iDist_Y = $aMousePos[1] - $aPos[1]
While _IsPressed("01", $vUser32Dll)
$aMousePos = GUIGetCursorInfo($hWnd)
ControlMove($hWnd, "", $iControl, $aMousePos[0] - $iDist_X, $aMousePos[1] - $iDist_Y) ;Bewegt das Control zu der Position wo sich der Mauszeiger befindet
Sleep(10)
$controlPos = ControlGetPos($hWnd, "", $aMousePos[4])
for $b = 0 to ubound($positionen) - 1
$AktID = _ArraySearch($positionen, $aMousePos[4], 0, 0, 0, 0, 1, 0) ;Schaut an welcher Position die aktuelle ID (Worüber sich der Mauszeiger befindet) im Array steht
if not @error Then
$positionen[$AktID][2] = $controlPos[0] ;Es wird nach der aktuellen ID gesucht.(worüber sich der Mauszeiger befindet).
$positionen[$AktID][3] = $controlPos[1] ;Dann werden die Koordinaten des Controls (nicht des Mauszeigers) gelesen und in das Array geschrieben
EndIf
Next
WEnd
EndIf
Case $Button1
$ausgewaehlt = GUICtrlRead($List1)
if $ausgewaehlt = "Label" Then
$positionen[ubound($positionen) - 1][4] = InputBox("Beschriftung des Labels", "Bitte geben Sie den Inhalt des Labels ein:")
$positionen[ubound($positionen) - 1][0] = GUICtrlCreateLabel($positionen[ubound($positionen) - 1][4], 1110, 20, 50, 15) ;Erstellt ein Label mit der vorherig ausgewählten Beschriftung
GUICtrlSetBkColor(-1, 0xFFFFFF) ;Setzt Hintergrundfarbe des Labels auf weiß
Else
$positionen[ubound($positionen) - 1][0] = GUICtrlCreatePic($objektepfad & $ausgewaehlt & ".jpg", 1100, 20, 0, 0, $GUI_ONTOP) ;Bild wird erstellt, wenn nicht "Label" ausgewählt wurde. Die ID wird ins Array geschrieben
EndIf
$positionen[ubound($positionen) - 1][1] = $ausgewaehlt ;Name des Controls was erstellt wurde wird in Array geschrieben
ReDim $positionen[UBound($positionen)+1][5] ;Neue Dimensionierung des Array, weil ein Eintrag hinzugekommen ist
Case $GUI_EVENT_SECONDARYUP ;Wenn Rechtsklick
$aMousePos = GUIGetCursorInfo($hWnd)
if $aMousePos[0] < 1230 then ;damit man alles was rechts ist in der groupbox nicht löschen kann
$PosDelete = _ArraySearch($positionen, $aMousePos[4], 0, 0, 0, 0, 1, 0) ;Schaut an welcher Stelle im Array sich die ID befindet
if not @error Then ;Wurde die ID gefunden, dann...
GUICtrlDelete($aMousePos[4]) ;1...wird das Control mit der entsprechenden ID gelöscht
_ArrayDelete($positionen, $PosDelete) ;2...wird der Eintrag aus Array gelöscht
sleep(100)
EndIf
EndIf
case $GSladen ;Wird der "Laden"-Button gedrück
if $positionen[0][0] > 0 Then
$msg = MsgBox(4, "Änderungen speichern", "Sollen die Änderungen gespeichert werden?")
if $msg = 7 or 6 then
speichern($msg, $GSauswahl)
EndIf
for $i = 0 to ubound($positionen) - 1
GUICtrlDelete($positionen[$i][0])
Next
GUICtrlDelete($Grundriss)
dim $positionen[1][5]
dim $positionenBackup[1][5]
$GSauswahl = GUICtrlRead($listegeschaeftsstellen)
Else
$GSauswahl = GUICtrlRead($listegeschaeftsstellen) ;1. Ist das Array der Positionen leer, dann wird $GSauswahl gleich der Auswahl gesetzt.
EndIf ;Daten werden normal eingelsen
guictrlsetstate($List1, $GUI_ENABLE)
guictrlsetstate($Button1, $GUI_ENABLE)
$grundriss = GUICtrlCreatePic("", 20, 25, 0, 0) ;Erstellt Bild des Grundrisses, Bild wird aber erst später sichtbar...*
for $d = 0 to ubound($aObjekte) - 1 ;Anhand der Objekte aus dem Array $aObjects werden die Werte aus den jeweiligen Sektionen gelesen
$section = IniReadSection (@ScriptDir & "\" & $GSauswahl & ".ini", $aObjekte[$d]) ;Hier werden die Positionen aus der .ini gelesen und in $positionen
for $e = 1 to ubound($section) - 1 ;gespeichert, wo später vll. noch Objekte hinzukommen
$coords = stringsplit($section[$e][1], ":") ;Der Wert aus .ini wird in 3 Teile gesplittet:
$xcoord = $coords[1] ;1: X-Koordinate
$ycoord = $coords[2] ;2: Y-Koordinate
$labeltext = $coords[3] ;3: Inhalt des Labels
if $aObjekte[$d] = "Label" Then ;Erstellt Label bzw...
$positionen[ubound($positionen)- 1][0] = GUICtrlCreateLabel($labeltext, $xcoord, $ycoord, 50, 15)
GUICtrlSetBkColor(-1, 0xFFFFFF)
Else
$positionen[ubound($positionen) - 1][0] = GUICtrlCreatePic($objektepfad & $aObjekte[$d] & ".jpg", $xcoord, $ycoord, 0, 0, $GUI_ONTOP) ;...Bilder an der Position, die aus .ini ausgelesen wurde
EndIf ;ID's der Conrols werden in Array geschrieben
$positionen[ubound($positionen)- 1][1] = $aObjekte[$d] ;Objektname, Koordinaten, Labeltext werden ebenfals ins Array geschrieben
$positionen[ubound($positionen)- 1][2] = $xcoord
$positionen[ubound($positionen)- 1][3] = $ycoord
$positionen[ubound($positionen)- 1][4] = $labeltext
ReDim $positionen[UBound($positionen)+1][5] ;Redimnesioniert, da es pro Eintrag größer wird, das Array
Next
Next
for $f = 0 to ubound($positionen) - 1 ;Erstellt das Backuparray mit identischen Inhalten aus $positionen
$positionenbackup[$f][0] = $positionen[$f][0] ;Hat man Änderungen vorgenommen, können diese verworfen werden, indem die Inhalte
$positionenbackup[$f][1] = $positionen[$f][1] ;aus dem backuparray in die .ini geschrieben werden
$positionenbackup[$f][2] = $positionen[$f][2]
$positionenbackup[$f][3] = $positionen[$f][3]
$positionenbackup[$f][4] = $positionen[$f][4]
ReDim $positionenbackup[UBound($positionenbackup)+1][5]
Next
$grundrisscontrol = GUICtrlSetImage($grundriss, @ScriptDir & "\Grundrisse\" & $GSauswahl & ".jpg") ;*...und zwar hier. Verhindert, dass das Bild über den Objekten liegt.
Case $exportieren
$GSauswahl = GUICtrlRead($listegeschaeftsstellen)
$PosGrundriss = ControlGetPos($hWnd, "", $grundriss)
_ScreenCapture_CaptureWnd (@ScriptDir & "\Exporte\" & $GSauswahl & ".jpg", $hWnd, 22, 46, $PosGrundriss[2] + 22, $PosGrundriss[3] + 46)
EndSwitch
WEnd
Func speichern($msg, $GSauswahl)
FileDelete(@ScriptDir & "\" & $GSauswahl & ".ini") ;.ini muss nach jedem Einlesen in das Array gelöscht werden. Behält man die .ini bei,
sleep(300)
if $msg = 7 Then ;kann es bei Änderungen zu Geistereinträgen kommen
for $c = 0 to ubound($positionenbackup) - 1 ;Änderungen nicht speichern: Backuparray wird in .ini geschrieben
IniWrite(@ScriptDir & "\" & $GSauswahl & ".ini", $positionenbackup[$c][1], $positionenbackup[$c][0], $positionenbackup[$c][2] & ":" & $positionenbackup[$c][3] & ":" & $positionenbackup[$c][4])
Next
elseif $msg = 6 Then
for $c = 0 to ubound($positionen) - 1 ;Änderungen speichern: Normales Array wird in .ini geschrieben
IniWrite(@ScriptDir & "\" & $GSauswahl & ".ini", $positionen[$c][1], $positionen[$c][0], $positionen[$c][2] & ":" & $positionen[$c][3] & ":" & $positionen[$c][4])
Next ;Der leere Eintrag in der .ini kommt daher, weil die letzte Zeile durch das letzte redim leer ist
EndIf
EndFunc
Ja, das ganze Skript umkrempeln möchte ich natürlich ungern. Das mit der Breiten und Höhenangabe am rechten Rand ist mir auch schon in den Sinn gekommen. Finde es allerdings etwas unkomfortable. Objekt erstellen, in das Editfenster klciken, Größe ändern. Muss man immer die Hände weg von der Maus nehmen, was mich etwas stört. Die Maßstabstreue habe ich eigentlich erstmal außenvor gelassen, da alle Raumpläne nur eine ungefähre Übersicht geben sollten. Die Größe ändern wollte ich halt gerne, damit wenigstens ein bischen stimmtund die Tische in einer kleinen Filiale nicht so klein/groß sind wie in einer großen
-
Hallo,
ich bin derzeit immernoch an meinem Raumplaner am schrauben und möchte nun Tische und PC's etc. durch gedrückt halen der linken Steuerungstaste und scrollen des Mausrades in der Größe verändern. Ansatz: gar keiner. Ich weiß, dass hier im Forum jmd. mal ein Skript geschrieben, was so einen Smiley über den Desktop hüpfen ließ. Dort konnte man auch die Größe des Smileys durch Drücken von strg und scrollen verändern. Hat jemand eine Idee wie ich das am einfachstesn bewerkstelligen kann? Möchte gar keine Lösung, nur einen Hinweis
-
Neu aufsetzen muss vll. nicht unbedingt sein. Lass doch mal die Windowsfehleranalyse rüberlaufen. Einfach von der Installations-DVD starten. Vll. findet er ja was. Wenn das nichts bringt: Systemwiederherstellung ausprobieren zu einem Zeitpunkt, wo das System noch funktionierte. Muss nicht unbedingt damit zusammenhängen, aber führe doch mal ein checkdisk durch.
Wie schon richtig vermutet wurde, kann es wirklich mit den Diensten zusammenhängen. Wenn im abgesicherten Modus der PC einwandfrei hochfährt, liegt das nahe, da viele Dienste im abgesicherten Modus gar nicht gestartet werden. Wenn du nicht neu aufsetzen möchtest, kannst du ja nicht unbedingt benötigte Dienste nach dem Ausschlussverfahren deaktivieren. Wenns Besserung verschafft, kannst du sie löschen und neuinstallieren. -
Oh, praktisch. Danke
Werde ich später noch mit einbauen -
Hallo,
ich habe mir mal ein Skript gebastelt um Netzlaufwerke einzubinden. Ich finde es ganz praktisch um benutze es oft bei der Arbeit um auch die freigegebenen Laufwerke von den Kollegen eben schnell einzubinden um was zu prüfen. So braucht man nicht immer erst in die Konsole und mit Net Use arbeiten. Zwar nichts besonderes, aber vll. dennoch auch für andere hilfreich
Spoiler anzeigen
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#include <File.au3>Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]$Form1 = GUICreate("Netzlaufwerke", 307, 220, 500, 400)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$Buchstabe = GUICtrlCreateGroup("Buchstabe", 16, 16, 81, 138) ;25
[/autoit] [autoit][/autoit] [autoit]
$buchstabe = GUICtrlCreateList("", 32, 32, 49, 109)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlSetData(4, "u:|v:|w:|x:|y:|z:")$pcname = GUICtrlCreateGroup("YF-Nummer", 104, 16, 97, 57)
[/autoit] [autoit][/autoit] [autoit]
$yf = GUICtrlCreateInput("Rechnername", 112, 40, 81, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)$freigab = GUICtrlCreateGroup("Freigabe", 208, 16, 81, 138)
[/autoit] [autoit][/autoit] [autoit]
$freigabe = GUICtrlCreateList("", 224, 32, 49, 109)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlSetData(10, "c$|d$|e$")$einbinden = GUICtrlCreateButton("Einbinden", 104, 105, 100, 20, $WS_GROUP)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($einbinden, "Einbinden")
GUICtrlSetOnEvent($einbinden, "einbinden")$trennen = GUICtrlCreateButton("Trennen", 104, 130, 100, 20, $WS_GROUP)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($trennen, "Trennen")
GUICtrlSetOnEvent($trennen, "Trennen")
;_______________________________________Statusmeldungen_______________________________
$status = GUICtrlCreateGroup("Statusmeldungen", 16, 155, 275, 45)
;________________________________________________________________________________________$checkbox1 = GUICtrlCreateCheckbox("nach Einbinden öffnen", 104, 80, 15, 15)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetOnEvent(-1, "checkbox1")
GUICtrlCreateLabel("Laufwerk öffnen", 120, 80, 80, 15)GUISetState()
[/autoit] [autoit][/autoit] [autoit]
;Wenn eingebunden, kann gleich geöffnet werdenGUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
GUISetOnEvent($GUI_EVENT_CLOSE, "_exit")
GUISetState()While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEndfunc einbinden()
[/autoit] [autoit][/autoit] [autoit]
Global $buchstabe1 = GUICtrlRead($buchstabe)
Global $freigabe1 = GUICtrlRead($freigabe)
Global $yf1 = guictrlread($yf)
$eingebunden = DriveMapAdd($buchstabe1, "\\" & $yf1 & "\" & $freigabe1)
if $eingebunden = 1 then
GUICtrlCreateLabel("Laufwerk " & $buchstabe1 & "\" & $yf1 & "\" & $freigabe1 & " erfolgr. eingebunden", 32, 175, 230, 15)
if GUICtrlRead($Checkbox1) = $GUI_CHECKED Then
run("C:\WINNT\explorer.exe /root, " & $buchstabe1)
EndIf
EndIf
EndFuncfunc trennen()
[/autoit] [autoit][/autoit] [autoit]
Global $buchstabe1 = GUICtrlRead($buchstabe)
Global $freigabe1 = GUICtrlRead($freigabe)
Global $yf1 = guictrlread($yf)
$getrennt = DriveMapDel ($buchstabe1)
If $getrennt = 1 then
GUICtrlCreateLabel("Laufwerk " & $buchstabe1 & "\" & $yf1 & "\" & $freigabe1 & " erfolgr. getrennt", 32, 175, 230, 15)
EndIf
EndFuncFunc _exit()
[/autoit] [autoit][/autoit] [autoit][/autoit]
Exit
EndFunc -
Eventuell kannst du das auch über die Registry abfragen: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USB
Dort werden alle per USB angeschlossenen Werte gespeichert. Bin mir aber gerade nicht sicher, ob sich die Schlüsselwerte ändern, wenn du das USB gerät ein-/aussteckst. -
Ich glaube er möchte von bestimmten Ordnern die Dateinamen in eine .txt schreiben. Wenn ein Ordner leer ist, soll dieser übersprungen werden... oderso

-
War gerade auf einem anderen Lösungsweg, deiner ist aber einfacher
Wollte die IDs der Controls die nicht verschiebbar sein sollen, in ein extra Array scheiben. Warum einfach wenns auch kompliziert geht 
Edit: Sehe gerade, dass das nächste Problem aufgetaucht ist: Wenn ich das GUI minimiere, den Grundriss vorher schon geladen habe, verschwindet das Bild, wenn ich es wiederaufrufe. Die Objekte sind aber noch da.
-
Also Problem ist das beim GSladen der Grundriss immer im Vordergrund ist, sehe ich das richtig?
Genau, das war mein Problem!
Dann denke ich wird es so erstellt wie du willst.
Jop, nach dienem Vorschlag wirds jetzt so erstellt, wie ich möchte. Finds zwar etwas unverständlich, da der Grundriss (das Bild von diesem) ja immernoch NACH den anderen Controls erstellt wird...
Beim verschieben eines Objektes im Hintergrund die Bilder die darüberliegen mitverschoben werden ( also die Überlagerungen)
Auch das dürfte sich lösen lassen indem du einfach das bild nochmal mit SetImage setztJa, das ist aber nicht weiter tragisch, da Grundriss oder das Groupcontrol gar nicht verschoben werden sollen
Sich auch andere Controls verschieben lassen, ist zwar lustig aber wohl kaum gewünscht
Ne, ist nicht gewünscht
[autoit]
Habe ich auch teilweise schon versucht zu unterbinden mitif $aMousePos[0] < 1230 then
[/autoit]
Funktioniert aber nur mit den Controls rechts. Wenn man sie allerdings aus der Ecke rauszieht über eine bestimmte Position hinaus, werden die auch verschoben. Weiß noch nicht genau wie ich das löse... Vll. so, dass die ID's halt nicht verschoben werden können...Es ist schön sauber
Danke

Ich hoffe jetz konnt ich dir vernünftiger weiterhelfen als vorhin
Das konntest du, vielen Dank dass du dir dafür Zeit genommen hast

-
Bei 10 Mal drücken mehrere hundert Controls? Wo das denn? Die Controls werden mit Position und Namen sowie ID ja in das Array geschrieben und da gibt es keine paar Hundert. Oder was übersehe ich? Meine Controls erstelle ich ja mit:
Spoiler anzeigen
[autoit]Case $Button1
[/autoit]
$ausgewaehlt = GUICtrlRead($List1)
if $ausgewaehlt = "Label" Then
$positionen[ubound($positionen) - 1][4] = InputBox("Beschriftung des Labels", "Bitte geben Sie den Inhalt des Labels ein:")
$positionen[ubound($positionen) - 1][0] = GUICtrlCreateLabel($positionen[ubound($positionen) - 1][4], 1110, 20, 50, 15) ;Erstellt ein Label mit der vorherig ausgewählten Beschriftung
GUICtrlSetBkColor(-1, 0xFFFFFF) ;Setzt Hintergrundfarbe des Labels auf weiß
Else
$positionen[ubound($positionen) - 1][0] = GUICtrlCreatePic($objektepfad & $ausgewaehlt & ".jpg", 1100, 20, 0, 0, $GUI_ONTOP) ;Bild wird erstellt, wenn nicht "Label" ausgewählt wurde. Die ID wird ins Array geschrieben
EndIf
$positionen[ubound($positionen) - 1][1] = $ausgewaehlt ;Name des Controls was erstellt wurde wird in Array geschrieben
ReDim $positionen[UBound($positionen)+1][5]Ok, kannst gerne mal reinschauen. Hier alle aktuellen Datien als Anhang.
-
Wunderbar, genau das was ich brauchte, danke euch beiden

-
Unsauber? Ich dachte gerade so wie ichs gelöst habe ist es am besten. Wenn ich später Räume mit den Objekten ausstatte, komme da vll. 40, 50 Objekte in einen Raum. Ich muss dann also min 50 Objekte vorher im Code erstellen und dann später die Bilder zuordnen? Den Weg finde ich persönlich ziemlich unsauber. Zwar würde das dann mein Problem lösen, aber überzeugen tut mich das nicht. Kann ich nicht auch ein Conrol erstellen (im Nachhinein) und dann dieses mit guictrlsetdata das bild zuweisen? Ist dann eine Mischung aus deinem und meinem und ich habe dieses ganze Codeplammflet nicht.
-
Das größere Problem habe ich gelöst, dass Objekte plötzlich immer verschwunden sind. Das lag an dem ReDim in Zeile 41. Habe ich weiter nach unten gesetzt. Warum der Blindeintrag nur mit Koordinaten gemacht wird, weiss ich noch nicht, aber da komme ich auch noch hinter!