Hallo,
anknüpfend an diese Diskussion vor einigen Jahren
viewtopic.php?f=2&t=12237&sid=2472d676357d557c2cc2d1d87718fa97
muss ich wieder einmal um Hilfe bitten.
Ich habe in der Buttonbar das Einschalten der Miniaturansichten für die Dateien und deren Vergößerung/Verkleinerung eingebaut.
Hier kann man die benötigten Dateien herunter laden. Buton.jpg zeigt die erweiterte Buttonbar.
Hier kann man sich alle Dateien herunter laden:
https://c.gmx.net/@324449226194949446/5ioV6_QIRFO6FwHsDMCxAA
Ich habe die Dateien ThumbSizeSwitchPos.au3 und ThumbSizeSwitchNeg.au3 an den aktuellen OK-Button (46) angepasst. Leider funktioniert trotzdem die automatische Umschaltung der Miniaturansichtsgröße nicht. Es wird zwar das entsprechende Einstellungsmenü aufgerufen, aber der aktuelle Zustand wird nicht mehr geändert. Es bleibt beim Zwischenspeicherordner und er Pixelanzahl.
Woran kann das liegen? Früher ging das wunderbar. Wer kennt sich aus?
Vielen Dank für Hilfe.
Wenn das Herunterladen nicht klappt, dann sind hier 2 wichtige Dateien:
ThumbSizeSwitchPos-Button46
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compression=4
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
AutoItSetOption("WinTitleMatchMode", 4)
; Die Programmierung basiert auf folgendem Link, aber reduziert auf das Durchlaufen einer INI-Tabelle, hier ThumbSizeSwitchPos.ini.
; http://rapidshare.com/files/1864881/ThumbSizeSwitch_1.0.zip.html
If WinExists("classname=TTOTAL_CMD") Then
;*** ThumbSizeSwitchPos.ini lesen
$strIniFile = @ScriptDir & "\ThumbSizeSwitchPos.ini"
$strIniSection = IniReadSectionNames($strIniFile)
;; $intIniSectionMatch = 0
;*** TC-Konfigurationsdialog "Miniaturansicht" aufrufen und aktuelle Thumbs-Einstellungen lesen (cm_ThumbnailsConfig=482;Conf: Thumbnails)
_PostMessage(482)
;~ WinWait("classname=TDLGCONFIGALL")
WinWaitActive("classname=TDLGCONFIGALL")
;~ WinSetState("classname=TDLGCONFIGALL", "", @SW_HIDE)
$strThumbsLocation = ControlGetText("classname=TDLGCONFIGALL", "", "TEdit7")
$strThumbsWidth = ControlGetText("classname=TDLGCONFIGALL", "", "TEdit6")
$strThumbsHeight = ControlGetText("classname=TDLGCONFIGALL", "", "TEdit5")
;; If $intIniSectionMatch = 0 Then
;*** Diejenige Section der INI-Datei bestimmen, die auf die aktuell konfigurierte folgt
For $intIniSection = 1 To $strIniSection[0]
If $strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSection], "ThumbsLocation", "") Then ExitLoop
Next
$intIniSectionMatch = Mod($intIniSection, $strIniSection[0]) + 1
; Folgende Zeilen sollen Rundumlauf verhindern (also von lettem INI-Eintrag nach erstem). Aber es gibt Probleme, wenn als
; wenn als Datenbankverzeichnis eines angegeben ist, das nicht in der INI-Datei vorkommt.
; If $intIniSectionMatch < $intIniSection Then
; $intIniSectionMatch = $intIniSection
; EndIf
;; EndIf
;*** Neue Thumbs-Einstellungen setzen
$strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsLocation", $strThumbsLocation)
$strThumbsWidth = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsWidth", $strThumbsWidth)
$strThumbsHeight = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsHeight", $strThumbsHeight)
ControlSetText("classname=TDLGCONFIGALL", "", "TEdit7", $strThumbsLocation)
ControlSetText("classname=TDLGCONFIGALL", "", "TEdit6", $strThumbsWidth)
ControlSetText("classname=TDLGCONFIGALL", "", "TEdit5", $strThumbsHeight)
;*** "OK"-Button
ControlClick("classname=TDLGCONFIGALL", "", "TButton46")
EndIf
Func _PostMessage($intMsg)
DllCall("user32.dll", "int", "PostMessage", "hwnd", WinGetHandle("classname=TTOTAL_CMD"), "int", 1075, "int", $intMsg, "int", 0)
EndFunc
ThumbSizeSwitchPos.ini
[Groesse1]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler1
ThumbsWidth=16
ThumbsHeight=16
[Groesse2]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler2
ThumbsWidth=32
ThumbsHeight=32
[Groesse3]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler3
ThumbsWidth=48
ThumbsHeight=48
[Groesse4]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler4
ThumbsWidth=64
ThumbsHeight=64
[Groesse5]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler5
ThumbsWidth=80
ThumbsHeight=80
[Groesse6]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler6
ThumbsWidth=96
ThumbsHeight=96
[Groesse7]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler7
ThumbsWidth=128
ThumbsHeight=128
[Groesse8]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler8
ThumbsWidth=160
ThumbsHeight=160
[Groesse9]
ThumbsLocation=%$LOCAL_APPDATA%\Ghisler9
ThumbsWidth=192
ThumbsHeight=192
ThumbSizeSwitch Miniaturanischtgröße ändern
Moderators: Hacker, Stefan2, white
Re: ThumbSizeSwitch Miniaturanischtgröße ändern
2ghisler(Author)
Wäre es möglich die Größenänderung der Miniaturansichten mittels STRG-Mausrad zu erzeugen?
Beispiel: im Explorer kann man damit alle Ansichtsmodi durchschalten, extrem praktisch.
STRG-Mausrad schaltet durch in folgender Reihenfolge:
1. Extra large Icons --> alle verfügbaren Größen
2. Large Icons --> alle verfügbaren Größen
3. Medium Icons --> alle verfügbaren Größen
4. Small Icons --> alle verfügbaren Größen
5. List
6. Details
7. Tiles
8. Content
Feature?
Wäre es möglich die Größenänderung der Miniaturansichten mittels STRG-Mausrad zu erzeugen?
Beispiel: im Explorer kann man damit alle Ansichtsmodi durchschalten, extrem praktisch.
STRG-Mausrad schaltet durch in folgender Reihenfolge:
1. Extra large Icons --> alle verfügbaren Größen
2. Large Icons --> alle verfügbaren Größen
3. Medium Icons --> alle verfügbaren Größen
4. Small Icons --> alle verfügbaren Größen
5. List
6. Details
7. Tiles
8. Content
Feature?
#101512
Re: ThumbSizeSwitch Miniaturanischtgröße ändern
Hallo,
meine weiteren vielen Probiererei hat zu keinem positiven Ergebnis geführt. Ich konnte nur feststellen, dass die TC-Version 9.22 einwandfrei klappt. Eine andere Version außer den aktuellen 9.50 habe ich leider nicht mehr.
Ich kann mir nur vorstellen, dass sich irgendeine verwendete Variable geändert hat. Vielleicht gibt es hier doch jemand, der Hinweise hat?
Danke sehr.
meine weiteren vielen Probiererei hat zu keinem positiven Ergebnis geführt. Ich konnte nur feststellen, dass die TC-Version 9.22 einwandfrei klappt. Eine andere Version außer den aktuellen 9.50 habe ich leider nicht mehr.
Ich kann mir nur vorstellen, dass sich irgendeine verwendete Variable geändert hat. Vielleicht gibt es hier doch jemand, der Hinweise hat?
Danke sehr.
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Re: ThumbSizeSwitch Miniaturanischtgröße ändern
Wahrscheinlich haben sich die internen Nummern des scriptingtools für Dialogelemente TEdit7 oder TButton46 verschoben, weil neue Konfigurationsoptionen hinzugekommen sind.
Im verlinkten Thread
viewtopic.php?f=2&t=12237
ist beschrieben, wie man die neuen Nummern herausfinden kann.
Im verlinkten Thread
viewtopic.php?f=2&t=12237
ist beschrieben, wie man die neuen Nummern herausfinden kann.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Re: ThumbSizeSwitch Miniaturanischtgröße ändern
Hallo,
vielen Dank für den Hinweis. Dass sich da noch andere Variablen geändert haben könnten, hatte ich zwar vermutet, als Laie aber nicht gewusst, wie ich das herausfinden kann. Nun klappt alles wieder.
Unter folgendem Link kann alles benötigte herunter geladen werden
https://c.gmx.net/@820364600447866511/2Xgep_KSQHmcsrNLruqd3g
Die Datei ThumbSizeSwitchPos-8,6,5,46.au3 hat folgenden Inhalt (ThumbSizeSwitchNeg-8,6,5,46.au3 entsprechend; 8,6,5,46 dienen als Anmerkung, welche Instanzen verwendet werden):
============
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compression=4
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
AutoItSetOption("WinTitleMatchMode", 4)
; Die Programmierung basiert auf folgendem Link, aber reduziert auf das Durchlaufen einer INI-Tabelle, hier ThumbSizeSwitchPos.ini.
; http://rapidshare.com/files/1864881/ThumbSizeSwitch_1.0.zip.html
If WinExists("classname=TTOTAL_CMD") Then
;*** ThumbSizeSwitchPos.ini lesen
$strIniFile = @ScriptDir & "\ThumbSizeSwitchPos.ini"
$strIniSection = IniReadSectionNames($strIniFile)
;; $intIniSectionMatch = 0
;*** TC-Konfigurationsdialog "Miniaturansicht" aufrufen und aktuelle Thumbs-Einstellungen lesen (cm_ThumbnailsConfig=482;Conf: Thumbnails)
_PostMessage(482)
;~ WinWait("classname=TDLGCONFIGALL")
WinWaitActive("classname=TDLGCONFIGALL")
;~ WinSetState("classname=TDLGCONFIGALL", "", @SW_HIDE)
$strThumbsLocation = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit8")
$strThumbsWidth = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit6")
$strThumbsHeight = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit5")
;; If $intIniSectionMatch = 0 Then
;*** Diejenige Section der INI-Datei bestimmen, die auf die aktuell konfigurierte folgt
For $intIniSection = 1 To $strIniSection[0]
If $strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSection], "ThumbsLocation", "") Then ExitLoop
Next
$intIniSectionMatch = Mod($intIniSection, $strIniSection[0]) + 1
; Folgende Zeilen sollen Rundumlauf verhindern (also von lettem INI-Eintrag nach erstem). Aber es gibt Probleme, wenn als
; wenn als Datenbankverzeichnis eines angegeben ist, das nicht in der INI-Datei vorkommt.
; If $intIniSectionMatch < $intIniSection Then
; $intIniSectionMatch = $intIniSection
; EndIf
;; EndIf
;*** Neue Thumbs-Einstellungen setzen
$strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsLocation", $strThumbsLocation)
$strThumbsWidth = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsWidth", $strThumbsWidth)
$strThumbsHeight = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsHeight", $strThumbsHeight)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit8", $strThumbsLocation)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit6", $strThumbsWidth)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit5", $strThumbsHeight)
;*** "OK"-Button
ControlClick("classname=TDLGCONFIGALL", "", "TButton46")
EndIf
Func _PostMessage($intMsg)
DllCall("user32.dll", "int", "PostMessage", "hwnd", WinGetHandle("classname=TTOTAL_CMD"), "int", 1075, "int", $intMsg, "int", 0)
EndFunc
=======
Viel Erfolg für Nachnutzer wünscht
ecki_c.
vielen Dank für den Hinweis. Dass sich da noch andere Variablen geändert haben könnten, hatte ich zwar vermutet, als Laie aber nicht gewusst, wie ich das herausfinden kann. Nun klappt alles wieder.
Unter folgendem Link kann alles benötigte herunter geladen werden
https://c.gmx.net/@820364600447866511/2Xgep_KSQHmcsrNLruqd3g
Die Datei ThumbSizeSwitchPos-8,6,5,46.au3 hat folgenden Inhalt (ThumbSizeSwitchNeg-8,6,5,46.au3 entsprechend; 8,6,5,46 dienen als Anmerkung, welche Instanzen verwendet werden):
============
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compression=4
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
AutoItSetOption("WinTitleMatchMode", 4)
; Die Programmierung basiert auf folgendem Link, aber reduziert auf das Durchlaufen einer INI-Tabelle, hier ThumbSizeSwitchPos.ini.
; http://rapidshare.com/files/1864881/ThumbSizeSwitch_1.0.zip.html
If WinExists("classname=TTOTAL_CMD") Then
;*** ThumbSizeSwitchPos.ini lesen
$strIniFile = @ScriptDir & "\ThumbSizeSwitchPos.ini"
$strIniSection = IniReadSectionNames($strIniFile)
;; $intIniSectionMatch = 0
;*** TC-Konfigurationsdialog "Miniaturansicht" aufrufen und aktuelle Thumbs-Einstellungen lesen (cm_ThumbnailsConfig=482;Conf: Thumbnails)
_PostMessage(482)
;~ WinWait("classname=TDLGCONFIGALL")
WinWaitActive("classname=TDLGCONFIGALL")
;~ WinSetState("classname=TDLGCONFIGALL", "", @SW_HIDE)
$strThumbsLocation = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit8")
$strThumbsWidth = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit6")
$strThumbsHeight = ControlGetText("classname=TDLGCONFIGALL", "", "TAltEdit5")
;; If $intIniSectionMatch = 0 Then
;*** Diejenige Section der INI-Datei bestimmen, die auf die aktuell konfigurierte folgt
For $intIniSection = 1 To $strIniSection[0]
If $strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSection], "ThumbsLocation", "") Then ExitLoop
Next
$intIniSectionMatch = Mod($intIniSection, $strIniSection[0]) + 1
; Folgende Zeilen sollen Rundumlauf verhindern (also von lettem INI-Eintrag nach erstem). Aber es gibt Probleme, wenn als
; wenn als Datenbankverzeichnis eines angegeben ist, das nicht in der INI-Datei vorkommt.
; If $intIniSectionMatch < $intIniSection Then
; $intIniSectionMatch = $intIniSection
; EndIf
;; EndIf
;*** Neue Thumbs-Einstellungen setzen
$strThumbsLocation = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsLocation", $strThumbsLocation)
$strThumbsWidth = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsWidth", $strThumbsWidth)
$strThumbsHeight = IniRead($strIniFile, $strIniSection[$intIniSectionMatch], "ThumbsHeight", $strThumbsHeight)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit8", $strThumbsLocation)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit6", $strThumbsWidth)
ControlSetText("classname=TDLGCONFIGALL", "", "TAltEdit5", $strThumbsHeight)
;*** "OK"-Button
ControlClick("classname=TDLGCONFIGALL", "", "TButton46")
EndIf
Func _PostMessage($intMsg)
DllCall("user32.dll", "int", "PostMessage", "hwnd", WinGetHandle("classname=TTOTAL_CMD"), "int", 1075, "int", $intMsg, "int", 0)
EndFunc
=======
Viel Erfolg für Nachnutzer wünscht
ecki_c.
Re: ThumbSizeSwitch Miniaturanischtgröße ändern
Hallo,
wie ich feststellen musste, haben die relevanten Größen in der 32- und in der 64-Bit-Version unterschiedliche Instanzen. Es ist daher leider nicht möglich, für beide Versionen die selben Größenumschaltdateien zu verwenden. In der 64-bit-Version heißen die entsprechenden Parameter:
Edit8, Edit6, Edit5, Button21.
Die ergänzten Dateien sind hier zu beziehen: https://c.gmx.net/@820364600447866511/LWwoa0zhSDOhXM0BqtywJQ
VG
ecki_c.
wie ich feststellen musste, haben die relevanten Größen in der 32- und in der 64-Bit-Version unterschiedliche Instanzen. Es ist daher leider nicht möglich, für beide Versionen die selben Größenumschaltdateien zu verwenden. In der 64-bit-Version heißen die entsprechenden Parameter:
Edit8, Edit6, Edit5, Button21.
Die ergänzten Dateien sind hier zu beziehen: https://c.gmx.net/@820364600447866511/LWwoa0zhSDOhXM0BqtywJQ
VG
ecki_c.