Genau das was ich gesucht habe. Ich kam nicht mehr drauf, wie das mit den GUIs war.
Dank Dir
LG
MrB
Genau das was ich gesucht habe. Ich kam nicht mehr drauf, wie das mit den GUIs war.
Dank Dir
LG
MrB
moin,
muss kurz mal was fragen.
Wie bekomme ich es hin, dass ich auf einer unsichtbaren GUI sichtbare Rects zeichnen kann. Sprich man sieht halt nur das Rect.
Ich hab das mal irgendwo gelesen, finde das aber nicht mehr und von alleine krieg ich´s einfach nicht hin.
Hoffe einer kann mir helfen
LG
MrB
Moin zusammen,
Passt zwar nicht ganz hierher aber naja.
Musste meinen Rechner komplett neu aufsetzen. Nachdem ich Scite wieder drauf hatte, funktioniert Tidy nicht mehr bzw. CTRL+T klappt nicht mehr. Manuelles starten von Tidy und Auswahl eines Scriptes sind kein Problem.
Weis einer wie ich das wieder auf CTRL+T bekomm. Die Scite Version ist sowieso in einigem anders, wie meine vorher. Ist übrigens alles hier von der Seite (AoutIT+Scite)
LG
MrB
Vergestt es, keine Ahnung was ich gameacht habe, aber es war gut !
Ist wieder da und funzt
RMT = Rechte MausTaste
Hmm, ich hab das auch falsch beschrieben. Fokus stimmt, denke ich.
Wenn ich iregnedeine TreeViewItem mit der rechten Maustaste anklicke und den Text mit
$Item = GUICtrlRead($MainTreeView)
$Thema = GUICtrlRead($Item, 1)
auslese, nimmt er immer das zuletzt angewählte Item. Erst wenn ich einmal mit linken Maustaste drauf klicken und dann mit der rechten Maustaste ist alles i.O.
Moin zusammen,
kann mir einer sagen, wie ich den Fokus auf das Item eines treeViews bekomme, welches ich mit der RMT anklicke?
#include <File.au3>
#include <Array.au3>
#include <GUITreeView.au3>
#include <GUIConstantsEx.au3>
Global $MainTreeView
[/autoit] [autoit][/autoit] [autoit];--------------------GUI erstellen--------------------------------------------------------------------------------------------------------------
$gui = GUICreate("SQL-Test", 800, 600)
$EditTitel = GUICtrlCreateInput("Hier bitte den Titel eintragen", 10, 15, 250, 25)
$EditInhalt = GUICtrlCreateEdit("Hier bitte den Inhalt eintragen", 10, 50, 500, 500)
$NewMainEntry = GUICtrlCreateButton("Neuen Haupteintrag anlegen", 15, 570, 150, 25)
[/autoit] [autoit][/autoit] [autoit]_TreeView()
$ContextTreeView = GUICtrlCreateContextMenu($MainTreeView)
$UnterEintrag_erstellen = GUICtrlCreateMenuItem("Untereintrag erstellen", $ContextTreeView)
GUISetState()
;--------------------GUI fertig--------------------------------------------------------------------------------------------------------------
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $UnterEintrag_erstellen
$Item = GUICtrlRead($MainTreeView)
$text = GUICtrlRead($Item, 1)
$checkparent = _GUICtrlTreeView_GetChildCount($MainTreeView, $Item) ; >0 dann ist ein Parent und -1 kein Parent
If $checkparent = -1 Then
MsgBox(0, "Achtung", "Du kannst nur Themen in Themenbereichen erstellen")
Else
MsgBox(0, "", "parent")
EndIf
EndSwitch
WEnd
Func _Themenbereich_anlegen($name)
DirCreate(@ScriptDir & "\Themen\" & $name)
EndFunc ;==>_Themenbereich_anlegen
Func _TreeView()
GUICtrlDelete($MainTreeView)
$MainTreeView = GUICtrlCreateTreeView(600, 15, 190, 570)
$aFileList = _FileListToArray(@ScriptDir & "\Themen\")
If IsArray($aFileList) Then
For $i = 1 To $aFileList[0]
$Sub = GUICtrlCreateTreeViewItem($aFileList[$i], $MainTreeView)
$aFileTheme = _FileListToArray(@ScriptDir & "\Themen\" & $aFileList[$i])
For $f = 1 To $aFileTheme[0]
GUICtrlCreateTreeViewItem(StringReplace($aFileTheme[$i], ".txt", ""), $Sub)
Next
Next
EndIf
EndFunc ;==>_TreeView
Hier ein kleines Bsp.
MfG
MrB
Hab´s mitlerweile akzeptiert, dass ich mit HTML arbeiten muss . Denke ist der einfachste Weg. Verzichte einfach auf Interaktion, zumindestens vorerst.
Hatte mal _GUICtrlRichEdit probiert, bekomme da aber keine Bilder rein. Per Copy/Paste aus Paint gehts zwar, bekomm das aber im Script nicht umgesetzt. Wäre sonst eine Alternative gewesen. Optisch akzeptabel und Interaktion möglich.
Naja, mal sehen.
THX
LG
MrB
Hallo zusammen,
Ich versuch verzweifelt eine optisch schöne Lösung für Tabellen zu finden. Das Standard Listview ermöglicht ja keine Bilder, Links usw. Zumindestens nicht so ohne weiteres.
Prinzipiell will ich eine Tabelle mit 2 Bildern (45x45px und 20x10px) erstellen, wo dann noch diverse Spalten mit Inhalten (auch Links) hinterher kommen sollen.
HTML funktioniert eigentlich, nur bin ich kein Fan davon, da es keine Interaktion erlaubt.
Excel hab ich nicht verstanden (nur das Einbinden in die GUI, hoffe ich ^^). Irgendwie Holzweg. Wie bekomm ich eine Tabelle als Object in einer GUI angezeigt
Ach ja, Excel muss doch auch auf jedem Rechner installiert sein damit das funktioniert oder ? Dann wäre das nicht machbar.
Hat einer noch andere Ideen ??
LG
MrB
Soweit gelöst.
Hat noch einer eine Idee, wie ich die RichEdit in Tabs verwende?
Prinzipiell machbar, da man ja eigentlich jeden Buchstaben überprüfen muss, finde ich dies aber nicht wirklich praktisch.
Muss doch noch einfacher gehen.
P.S.: Man kann zwar auch den ganzen Text auslesen lassen, nur ist das Ergebniss mager. Es werden zwar alle im Text gefunden Attribute angezeigt, nur ohne Zuordnung. Farbe und Größe werden dadurch ja nicht erkannt.
Hallo zusammen,
Steh anscheinend wieder ziemlich fest auf´m Schlauch :-(.
Befasse mich grad mit dem Thema _GUICtrlRichEdit, da diese doch mehr Möglichkeiten bieten. Klappt soweit auch alles wunderbar. Text färben, größer oder kleiner machen und sonstige Formatierungen sind kein Problem. Nur, wie lese ich einen formatierten Text ein ohne das er seine Formatierung verliert. Mit _GUICtrlRichEdit_GetText ist diese ja weg.
Nochmal zum Verständnis: Ich möchte einen Text aus eine _GUICtrlRichEdit auslesen der mehrere verschiedene CharAttribute hat (farbig,kursiv, fett und unterstrichen) hat ohne diese zu verlieren und einige Änderungen daran vornehmen (CharAttribute ändern). Danach soll der Text wieder ins _GUICtrlRichEdit.
Hoffe einer kann mir da mal einen Anstoss geben. Hab noch nicht mal einen sinvollen Ansatz.
LG
MrB
OK, lesen hätte da wirklich geholfen !
Muss mir mal mehr Zeit nehmen. Dank Dir !
Vergesst es. Hab´s so gelöst, dass ich mir mit GDI+ ein Rect um die betreffenden SubItems zeichne. Gefällt mir sogar noch besser so.
Obwohl ich trotzdem gerne wissen würde, was ich bei der UDF falsch gemacht hab
Umbauen möchte ich eher nicht. Hab deine UDF gefunden: ListView - SubItem einzeln färben/formatieren, Finale Version! (v1.3)
Hab die mal versucht zu benutzen, scheitere aber.
Bsp.:
#include <GuiListView.au3>
#include <WindowsConstants.au3>
#include 'C:\Widget\Snippets\LV_Format_include[1.3].au3'
#include <GuiListView.au3>
Global $NewSearch = False
$GUI = GUICreate("Code Snippets", @DesktopWidth - 225, @DesktopHeight - 100, 5, 5, $WS_POPUPWINDOW, $WS_EX_APPWINDOW)
GUISetBkColor(0x000000, $GUI)
$Exit_Button = GUICtrlCreateButton("X", @DesktopWidth - 225 - 25, 5, 20, 20)
GUICtrlSetFont(-1, 10, 1000)
$Mini_Button = GUICtrlCreateButton(Chr(151), @DesktopWidth - 225 - 50, 5, 20, 20)
GUICtrlSetFont(-1, 10, 400)
$listview1 = GUICtrlCreateListView("Nr|Name|Erweit.", 5, 50, @DesktopWidth - 225 - 10, @DesktopHeight - 100 - 120)
For $i = 0 To 10
_GUICtrlListView_AddItem($listview1, Random(1, 10, 1))
_GUICtrlListView_AddSubItem($listview1, $i, Random(1, 10, 1), 1)
_GUICtrlListView_AddSubItem($listview1, $i, Random(1, 10, 1), 2) ; Plus der Platz halter für die erste Spalte
Next
$Input_suche = GUICtrlCreateInput("Suchbegriff eingeben...", @DesktopWidth - 225 - 320, @DesktopHeight - 100 - 47, 200, 20)
$SearchButton = GUICtrlCreateButton("Suche starten", @DesktopWidth - 225 - 110, @DesktopHeight - 100 - 50, 100, 25)
GUISetState(@SW_SHOW, $GUI)
While 1
HotKeySet("^!x", "MeinExit")
$nMsg = GUIGetMsg()
Switch $nMsg
Case $Exit_Button
MeinExit()
Case $Mini_Button
GUISetState(@SW_MINIMIZE, $GUI)
Case $SearchButton
If $NewSearch = False Then
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
Else
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
EndIf
EndSwitch
WEnd
Func _Suche($search_string)
Local $AktuelleZeile = 0
Local $AlteZeile = 0
$SuchZeile = -1
_GUICtrlListView_Formatting_Startup($GUI, $listview1)
$search_string = GUICtrlRead($Input_suche)
Local $counter = 0
If $search_string <> "Suchbegriff eingeben..." Then
Do
$AktuelleZeile = _GUICtrlListView_FindInText($listview1, $search_string, $AlteZeile);, True, True)
If $AktuelleZeile <> -1 Then
If $AktuelleZeile >= $AlteZeile Then
$AlteZeile = $AktuelleZeile
_GUICtrlListView_FormattingCell($listview1, $AktuelleZeile, 0, 0x00FF00, 0x008000)
$SuchZeile = $AktuelleZeile
EndIf
EndIf
$counter += 1
Until $AktuelleZeile < $AlteZeile Or $counter > 20
GUICtrlSetData($SearchButton, "neue Suche")
$NewSearch = True
Else
GUICtrlSetData($Input_suche, "")
EndIf
$SuchZeile = -1
_GUICtrlListView_Formatting_Shutdown()
Return $SuchZeile
EndFunc ;==>_Suche
Func MeinExit()
Exit
EndFunc ;==>MeinExit
AutoIt3.exe schmiert komplett ab. Denke liegt an mir, dass ich was falsch mache, komme nur nicht drauf was.
LG
MrB
Eigentlich schon, nur baue ich das ListView mit
_GUICtrlListView_AddItem()
_GUICtrlListView_AddSubItem()
Somit weis ich nicht wie ich die Items dann ansprechen soll!
Abend zusammen,
Hab da leider mal wieder was, wo ich nicht weiter komme. Hab dazu zwar was hier gefunden, nur bekomme ich das nicht umgesetzt.
Hier mal ein Beispiel Script
#include <GuiListView.au3>
#include <WindowsConstants.au3>
Global $NewSearch = False
$GUI = GUICreate("Code Snippets", @DesktopWidth - 225, @DesktopHeight - 100, 5, 5, $WS_POPUPWINDOW, $WS_EX_APPWINDOW)
GUISetBkColor(0x000000, $GUI)
$Exit_Button = GUICtrlCreateButton("X", @DesktopWidth - 225 - 25, 5, 20, 20)
GUICtrlSetFont(-1, 10, 1000)
$Mini_Button = GUICtrlCreateButton(Chr(151), @DesktopWidth - 225 - 50, 5, 20, 20)
GUICtrlSetFont(-1, 10, 400)
$listview1 = GUICtrlCreateListView("Nr|Name|Erweit.", 5, 50, @DesktopWidth - 225 - 10, @DesktopHeight - 100 - 120)
For $i = 0 To 10
GUICtrlCreateListViewItem(Random(1, 10,1) & "|" & Random(1, 10,1) & "|" & Random(1, 10,1), $listview1)
Next
$Input_suche = GUICtrlCreateInput("Suchbegriff eingeben...", @DesktopWidth - 225 - 320, @DesktopHeight - 100 - 47, 200, 20)
$SearchButton = GUICtrlCreateButton("Suche starten", @DesktopWidth - 225 - 110, @DesktopHeight - 100 - 50, 100, 25)
GUISetState(@SW_SHOW, $GUI)
While 1
HotKeySet("^!x", "MeinExit")
$nMsg = GUIGetMsg()
Switch $nMsg
Case $Exit_Button
MeinExit()
Case $Mini_Button
GUISetState(@SW_MINIMIZE, $GUI)
Case $SearchButton
If $NewSearch = False Then
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
Else
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
EndIf
EndSwitch
WEnd
Func _Suche($search_string)
Local $AktuelleZeile = 0
Local $AlteZeile = 0
$SuchZeile = -1
$search_string = GUICtrlRead($Input_suche)
Local $counter = 0
If $search_string <> "Suchbegriff eingeben..." Then
Do
$AktuelleZeile = _GUICtrlListView_FindInText($listview1, $search_string, $AlteZeile);, True, True)
If $AktuelleZeile <> -1 Then
If $AktuelleZeile >= $AlteZeile Then
$AlteZeile = $AktuelleZeile
_GUICtrlListView_ClickItem($listview1, $AktuelleZeile, "left", False, 1)
$SuchZeile = $AktuelleZeile
EndIf
EndIf
$counter += 1
Until $AktuelleZeile < $AlteZeile Or $counter > 20
GUICtrlSetData($SearchButton, "neue Suche")
$NewSearch = True
Else
GUICtrlSetData($Input_suche, "")
EndIf
$SuchZeile = -1
Return $SuchZeile
EndFunc ;==>_Suche
Func MeinExit()
Exit
EndFunc ;==>MeinExit
Nun die Problemstellung:
Ich möchte, dass jeder gefundene Eintrag, irgendwie kenntlich gemacht wird und zwar dauerhaft bis entweder eine neue Suche gestartet wird oder die Markierungen per Button aufgehoben werden. Schön wäre es natürlich, wenn nur die SubItems markiert werden würden.
Das Bsp. was hier gefunden hatte, funktioniert über WM_NOTIFY. Nur da steig ich nicht wirklich durch !
Siehe hier: Klick
LG
MrB
Danke AutoBert,
Reicht mir völlig so. Danke dir !
Ach ja, Win7 Ultimate 64Bit, funktioniert da auch ohne Probs!
Tach zusammen,
Hab mich mal gerade an Listviews mit Icons probiert. Hintergrund ist der, dass für alle Dateien in einem Ordner das passende Icon n der Liste angezeigt wird. Aber egal was ich mache, es wird immer ein Icon in der Spalte 0 angezeigt. Hier mal ein Bsp.
#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <ListViewConstants.au3>
#include <WinAPI.au3>
#include <WinAPIEx.au3>
#include <WindowsConstants.au3>
$GUI = GUICreate("tt", @DesktopWidth - 225, @DesktopHeight - 100, 5, 5)
GUISetBkColor(0x000000, $GUI)
$listview1 = GUICtrlCreateListView("Nr|Name|Erweit.", 5, 50, @DesktopWidth - 225 - 10, @DesktopHeight - 100 - 120)
$hImageList = _GUIImageList_Create(16, 16, 6)
_GUICtrlListView_SetImageList($listview1, $hImageList, 1)
_GUICtrlListView_SetExtendedListViewStyle($listview1, $LVS_EX_SUBITEMIMAGES)
$nr = 1
$Name = "test"
$Erweiterung = ".au3"
$hIcon = _WinAPI_ShellExtractAssociatedIcon($Erweiterung, 1)
[/autoit] [autoit][/autoit] [autoit]If @error Then MsgBox(0, "", @error)
_GUIImageList_ReplaceIcon($hImageList, -1, $hIcon)
_GUICtrlListView_AddItem($listview1, $nr) ;Zeile 0, SubItem 1
_GUICtrlListView_AddSubItem($listview1, 0, $Name, 1);Zeile 0, SubItem 2
_GUICtrlListView_AddSubItem($listview1, 0, $Erweiterung, 2, 0);Zeile 0, SubItem 3
_WinAPI_DestroyIcon($hIcon)
[/autoit] [autoit][/autoit] [autoit]GUISetState()
[/autoit] [autoit][/autoit] [autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Was mache ich da falsch ?
Oder ist das so gewollt?
Benötigte Dateien hab ich mal angehangen
Lg
MrB
Leider nicht autoBert. Das habe ich auch schon probiert. Sowie wie eigentlich jede mögliche schreibweise.
Habe aber eben bemerkt, dass das teilweise funktioniert. Meine damit, dass eine Datei funktioniert eine andere nicht.
Dabei ist die Schreibweise recht egal:
_IENavigate($oIE, "file:///" & @ScriptDir & "\temp\index.html")
_IENavigate($oIE, "file:///" & @ScriptDir & "/temp/index.html")
Beides geht. Hat das irgendetwas mit dem Inhalt zu tun? Naja, sind beides extrem einfach gestrickte Html Dateien .
Naja, sei´s drum. Dann muss halt ShellExecute reichen
Hmm, da das Problem auch hier im Forum schon existierte (auch ohne Reaktion), denke ich mal, dass da einfach keiner was zu weis.
Schade, das ist dann doch blöd !
Sry, ich muss das nochmal nach vorne holen.
Wie rufe ich eine lokale Html Datei auf ?
Wird dann Embedded in einer GUI angezeigt. Mit Weblinks usw kein Problem, nur lokal geht´s nicht. Bin schier am verzweifeln