Ich glaube, dass du seine Frage missverstanden hast.
Gruß,
UEZ
Ich glaube, dass du seine Frage missverstanden hast.
Gruß,
UEZ
Hier mein Vorschlag:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ColorConstants.au3>
#include <GDIPlus.au3>
_GDIPlus_Startup()
#Region ### START Koda GUI section ### Form=
$sFontname = "Times New Roman"
$fFSize = 9.5
$Form1 = GUICreate("Beispiel", 284, 126, 192, 124)
$Radio1 = GUICtrlCreateRadio("Radio1", 16, 80, 70)
GUICtrlSetFont(-1, $fFSize, 400, 0, $sFontname)
GUICtrlSetBkColor($Radio1, $COLOR_RED)
$Input1 = GUICtrlCreateInput("", 32, 24, 121, 21)
$Button1 = GUICtrlCreateButton("OK", 160, 24, 75, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_GDIPlus_Shutdown()
Exit
Case $Button1
$Text = GUICtrlRead($Input1)
$aDim = _GDIPlus_MeasureString($Text, $sFontname, $fFSize)
ControlMove($Form1, "", $Radio1, 16, 80, $aDim[0] + 18)
GUICtrlSetData($Radio1, $Text)
EndSwitch
WEnd
Func _GDIPlus_MeasureString($sString, $sFont = "Arial", $fSize = 12, $iStyle = 0, $bRound = True)
Local $aSize[2]
Local Const $hFamily = _GDIPlus_FontFamilyCreate($sFont)
If Not $hFamily Then Return SetError(1, 0, $aSize)
Local Const $hFormat = _GDIPlus_StringFormatCreate()
Local Const $hFont = _GDIPlus_FontCreate($hFamily, $fSize, $iStyle)
Local Const $tLayout = _GDIPlus_RectFCreate(0, 0, 0, 0)
Local Const $hGraphic = _GDIPlus_GraphicsCreateFromHWND(0)
Local $aInfo = _GDIPlus_GraphicsMeasureString($hGraphic, $sString, $hFont, $tLayout, $hFormat)
Switch $bRound
Case True
$aSize[0] = Round($aInfo[0].Width, 0)
$aSize[1] = Round($aInfo[0].Height, 0)
Case Else
$aSize[0] = $aInfo[0].Width
$aSize[1] = $aInfo[0].Height
EndSwitch
_GDIPlus_FontDispose($hFont)
_GDIPlus_FontFamilyDispose($hFamily)
_GDIPlus_StringFormatDispose($hFormat)
_GDIPlus_GraphicsDispose($hGraphic)
Return $aSize
EndFunc ;==>_GDIPlus_MeasureString
Gruß,
UEZ
Das habe ich mir auch gedacht, wollte aber nochmals nachfragen, damit das klar ist.
Gruß,
UEZ
Wie willst du bewerten, wenn die Farben zufällig erzeugt werden?
Gruß,
UEZ
Dann probiere mal dies:
#AutoIt3Wrapper_Version=b
#include <APIGdiConstants.au3>
#include <FontConstants.au3>
#include <StaticConstants.au3>
#include <WinAPIGdi.au3>
#include <WindowsConstants.au3>
; Create GUI
Local $hForm = GUICreate('Test ' & StringReplace(@ScriptName, '.au3', '()'), 400, 400)
Local $idPic = GUICtrlCreatePic('', 0, 0, 60, 60)
Local $hPic = GUICtrlGetHandle($idPic)
; Create bitmap
Local $hDC = _WinAPI_GetDC($hForm)
$hBitmap = _WinAPI_CreateCompatibleBitmap($hDC, 60, 60)
$hBitmapDC = _WinAPI_CreateCompatibleDC($hDC)
$hObjOld = _WinAPI_SelectObject($hBitmapDC, $hBitmap)
; Draw objects
_WinAPI_GetSysColor($COLOR_3DFACE)
Local $hOldBrush = _WinAPI_SelectObject($hBitmapDC, _WinAPI_GetStockObject($DC_BRUSH))
Local $hOldPen = _WinAPI_SelectObject($hBitmapDC, _WinAPI_GetStockObject($DC_PEN))
_WinAPI_SetDCBrushColor($hBitmapDC, _WinAPI_GetSysColor($COLOR_3DFACE))
_WinAPI_ExtFloodFill($hBitmapDC, 0, 0, 0, $FLOODFILLSURFACE)
_WinAPI_SetDCBrushColor($hBitmapDC, 0x990404)
_WinAPI_SetDCPenColor($hBitmapDC, 0x990404)
$tRECT = _WinAPI_CreateRect(0, 0, 60, 60)
_WinAPI_RoundRect($hBitmapDC, $tRECT, 20, 20)
_WinAPI_BitBlt($hDC, 0, 0, 60, 60, $hBitmapDC, 0, 0, $SRCCOPY)
[/autoit] [autoit][/autoit] [autoit]_WinAPI_SelectObject($hBitmapDC, $hObjOld)
_WinAPI_ReleaseDC($hPic, $hDC)
; Set bitmap to control
_WinAPI_DeleteObject(_SendMessage($hPic, $STM_SETIMAGE, 0, $hBitmap))
GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]Do
Until GUIGetMsg() = -3
$hBrush = _WinAPI_SelectObject($hDC, $hOldBrush)
_WinAPI_DeleteObject($hBrush)
$hPen = _WinAPI_SelectObject($hDC, $hOldPen)
_WinAPI_DeleteObject($hPen)
_WinAPI_DeleteDC($hBitmapDC)
_WinAPI_DeleteObject($hBitmap)
Gruß,
UEZ
Probiere mal die GDI+ Variante:
#include <GDIPlus.au3>
_GDIPlus_Startup()
Global Const $STM_SETIMAGE = 0x0172
; Create GUI
Local $hForm = GUICreate('Test', 400, 400)
Local $idPic = GUICtrlCreatePic('', 0, 0, 60, 60)
Local $hPic = GUICtrlGetHandle($idPic)
Local $hGDIBmp = _GDIPlus_CreateBitmapRoundCornerRect()
_WinAPI_DeleteObject(GUICtrlSendMsg($idPic, $STM_SETIMAGE, $IMAGE_BITMAP, $hGDIBmp))
GUISetState(@SW_SHOW)
Do
Until GUIGetMsg() = -3
_WinAPI_DeleteObject($hGDIBmp)
_GDIPlus_Shutdown()
Func _GDIPlus_CreateBitmapRoundCornerRect($iW = 60, $iH = 60, $iColorBg = 0xFFFFFFFF, $iColorBorder = 0xFF000000, $iRadius = 8, $bGDIBmp = 1)
Local Const $iX = 0, $iY = 0, $iPenSize = 1
Local Const $iWidth = $iW - $iPenSize, $iHeight = $iH - $iPenSize
Local Const $hBitmap = _GDIPlus_BitmapCreateFromScan0($iW, $iH)
Local Const $hCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap)
_GDIPlus_GraphicsSetSmoothingMode($hCtxt, $GDIP_SMOOTHINGMODE_HIGHQUALITY)
_GDIPlus_GraphicsSetTextRenderingHint($hCtxt, $GDIP_TEXTRENDERINGHINT_ANTIALIASGRIDFIT)
Local Const $hPath = _GDIPlus_PathCreate()
_GDIPlus_PathAddArc($hPath, $iX + $iWidth - ($iRadius * 2), $iY, $iRadius * 2, $iRadius * 2, 270, 90)
_GDIPlus_PathAddArc($hPath, $iX + $iWidth - ($iRadius * 2), $iY + $iHeight - ($iRadius * 2), $iRadius * 2, $iRadius * 2, 0, 90)
_GDIPlus_PathAddArc($hPath, $iX, $iY + $iHeight - ($iRadius * 2), $iRadius * 2, $iRadius * 2, 90, 90)
_GDIPlus_PathAddArc($hPath, $iX, $iY, $iRadius * 2, $iRadius * 2, 180, 90)
_GDIPlus_PathCloseFigure($hPath)
Local Const $hBrush = _GDIPlus_BrushCreateSolid($iColorBg)
_GDIPlus_GraphicsFillPath($hCtxt, $hPath, $hBrush)
Local Const $hPen = _GDIPlus_PenCreate($iColorBorder, $iPenSize)
_GDIPlus_GraphicsDrawPath($hCtxt, $hPath, $hPen)
_GDIPlus_PathDispose($hPath)
_GDIPlus_BrushDispose($hBrush)
_GDIPlus_PenDispose($hPen)
_GDIPlus_GraphicsDispose($hCtxt)
If $bGDIBmp Then
Local $hGDIBmp = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap)
_GDIPlus_BitmapDispose($hBitmap)
Return $hGDIBmp
EndIf
Return $hBitmap
EndFunc
Gruß,
UEZ
Die Umfrage ist beendet und ein knappes Nein wurde gewählt. Was jetzt letztendlich genau implementiert wird, ist die Frage, die vielleicht von den Zuständigen beantwortet werden kann.
Danke für die rege Teilnahme und konstruktive Kritiken beider Seiten
. Mich haben die "Like" Gegner nicht überzeugen können, gleiches gilt anders herum.
Gruß,
UEZ
Zumindest ist es erfreulich, dass ein Meinungsstreit möglich ist, der auf Argumenten fußt und nicht mit wilden Emotionen betrieben wird.
Ich mache es kurz:
-> "Geliked".
Gruß,
UEZ
...
Andere mögen das anders sehen, ist auch ihr gutes Recht! Allerdings fehlt immer noch ein Statement der Sinnhaftigkeit. Nur weil "andere Websites" das auch können, ist das noch lange kein Grund dieses Feature auch einzuführen.
...
Wenn das andere Websiten das "Like" Feature eingeführt haben und es damit gut läuft und die Kritiken hier nicht gelebt werden, warum sollen wir das auch einführen?
Das klingt nach einem erzkonservativen Bayern Politiker frei nach dem Motto: "Never change a running system". Warum wurde überhaupt ein Update der Foren Software eingespielt (Sinnhaftigkeit)? Hier schlägt das deutsche Mentalität voll durch, z.B. Autobahn Maut, die nicht kommen sollte, aber jetzt doch kommt, aber viel zu kompliziert umgesetzt wird. Warum von den Nachbarn das erprobte Maut System nutzen? ![]()
Alle paar Jahre können, vielleicht sollten, wir uns ein wenig bewegen und gewisse Feature diskutieren, die ein neues Update der Forensoftware mit sich bringt. Wenn die Mehrheit aus welchen Gründen auch das nicht will, dann ist das ok.
Gruß,
UEZ
Eben nicht. Die Anfaenger sollen sich ja weiterentwickeln und sinnvolle Programme schreiben statt schwer debugbaren und fehleranfaelligen Murks.
Besonders deutlich wird das im C++-Forum, wo manche Neulinge auf low-level-Sachen wie manuelle Speicherverwaltung statt auf fertige Container setzen und einmal im Jahr taucht sogar jemand auf, der Schleifen mit goto schreibt. Fuer ihn macht das Sinn, weil "reserviere Speicher" und "springe zu" fuer einen Neuling nunmal wesentlich einfacher zu verstehen sind, als die Verwendung einer Klasse oder Schleife, aber man gewoehnt sich das von Anfang an falsch an. In AutoIt ist das nicht so schlimm, weil es keine so grossen Unterschiede zwischem elegantem und anderen Code gibt, aber auch hier erkennt z.B. nicht jeder gleich die Vorteile von Funktionen.
Dafür ist ja ein "Like" nicht geeignet. Wenn jemand ein Like vergibt und es sein Problem erst mal löst, dann ist das ok. Aber man kann ja posten, dass ein anderer Weg besser ist.
Ferner geht es auch nicht darum nur Lösungen zu "Liken", sondern generell, wenn ein Beitrag Wert ist "geliked" zu werden, was jedem selbst überlassen ist zu definieren, was bewertet werden kann.
Z.B. könnte man in diesem Topic einige Aussagen, die man unterstützt "Liken", um den Beitrag zu bewerten.
Gruß,
UEZ
Was gut oder weniger gut ist, ist ja relativ. Wenn ein Newbie was gut findet und Oldie ehe "na ja" sagen würde, dann ist das ja aus der Sicht des Newbies ok.
Es geht ja nicht darum, "Likes" zu sammeln, sondern eher auszudrücken, dass der Beitrag einem gefallen hat und man dafür dankt.
Ich bin auch dafür, dass man nicht die gesammelten "Likes" im Profil sehen muss, aber der Count in dem jeweiligen Beitrag wäre gut.
Und man muss ja nicht "Liken", sondern man kann "Liken" (jedem selbst überlassen). Wie öfters erwähnt, wird das im engl. Forum schon seit längerem gelebt und bis jetzt kann ich die hier aufgelisteten Kritikpunkte nicht sehen.
Gruß,
UEZ
Das ist klar, aber meistens fallen die Feedback eher bescheiden aus.
Gruß,
UEZ
Ich persönlich kann auf Feedback a la eBay ("Weiter so, Danke, Super gecodet, Danke für's Teilen, etc.) verzichten. Da nehme ich lieber das Daumen-hoch Feedback.
Gruß,
UEZ
BugFix : ich glaube, du siehst die Sache zu negativ. Ich vergebe eigentlich nur "Likes", wenn mir der Beitrag gefällt und nicht weil er ein tollen Nickname hat, ich anstatt in der Nase bohre, lieber irgendwelche Beiträge like usw. - diese User wird es immer geben, sollte aber minimal sein.
Ich sehe da schon einen Unterschied, ob ein Beitrag 8 oder 80 Likes hat, wenn man annimmt, dass die Likes nicht aus Langeweile entstanden sind.
Probezeit dafür ist auch ok, um einfach zu sehen, wie sich die Community bezgl. "Like" verhält. Wie lange die Probezeit sein sollte, kann man ja separat diskutieren.
Gruß,
UEZ
Ich bin, außer dem engl. Forum, nirgends aktiv, so dass sich meine Erfahrungen auf das engl. Forum beschränken.
Dort kann ich keinen "Kampf" um "Likes" erkennen und die erste Antwort ist auch nicht die Beste, die geliked wird; es ist auch keine "Skriptproduktionsstätte".
Ich finde es gut, wenn, z.B. ein eukalyptus seine D2D UDF präsentiert, ich ihm dafür ein Like für seine Arbeit geben kann. Ich denke, dass es ihm nicht um das Sammen von Likes gehen würde, sondern er Spaß am Programmieren hat. Die Summe der Likes würde die Qualität widerspiegeln. Anders herum würde auch keine Likes sagen, dass das nicht so gut war. Man muss ja nicht immer alles kommentieren.
Das das "Like" System vielleicht missbraucht wird, um den menschlichen Sammeltrieb zu befriedigen, ist leider gegeben.
Gruß,
UEZ
Naja, ich finde es nicht so gut, genauso wie die drz. angezeigten punkte in den profilen. Dadurch besteht eine gefahr dass früher oder später eine art "wettkampf" raus wird. Merke ich schon langsam an mir selbst. Ich versuche drz. Andy in sachen assembler durchaus nachzueifern und "besser" als er zu werden. Mittlerweile bin ich schon fast abhängig vin dem forum hier, mind. jede stunde muss ich gucken was hier das drz. thema ist und ob ich was dazu beitragen kann. Wenn jetzt auch noch diese like geschichte dazu kommt könnte ich dazu neigen überheblicher zu werden.
Ich habe das jetzt nur aus meiner perspektive beschrieben weil ich nicht für andere sprechen kann. Aber vllt. Weiß ja der eine oder andere user wie und was ich damit meine.
Naja, ich bin dagegen weils sich auf mich negativ auswirken könnte.
Gesendet von meinem HTC Desire HD A9191 mit Tapatalk 2
Ich persönlich kenne den "Like" Knopf aus dem engl. Forum und bis jetzt war ich nie im "Wettkampfmodus"! Aber, wenn mir ein Beitrag gefällt, dann möchte ich das auch kenntlich machen können, indem ich den "Like" Knopf drücke, so dass die "Likes" die Qualität widerspiegeln können. Viele sammeln "Likes" in dem Chat Bereich, sodass die Quantität der "Likes" nicht unbedingt auf die Skripte zurückzuführen ist.
Wenn es den "Wettkampfmodus" fördert, umso besser. Vielleicht erhöhen sich dadurch die Qualität der Beiträge, denn einen "Like" Vote muss man sich erst "verdienen".
Gruß,
UEZ
Ich persönlich finde es gut, wenn man ein qualitativ guten Beitrag bewerten kann, indem man auf Like klickt. Dislike sollte es nicht geben.
Wie denkt ihr?
Umfrage endet am 20. Oktober 2014 um 00:00 Uhr
Gruß,
UEZ
So was hier?
[autoit]
$var = Asc("a") ; $var = 97
$crypt = BitXOR($var - 0xF, 0xC3) ;$temp = 145 = 0x91
$decrypt = BitXOR($crypt, 0xC3) + 0xF
MsgBox(0, "Test", $var & " / " & $decrypt & " / " & Chr($decrypt))
[/autoit]Wurde im Prinzip ja bereits beantwortet... ![]()
Gruß,
UEZ
Ich verstehe zwar kaum C/C++/C#, aber ich schaue es mir morgen an.
Willst du die Zeile verschieben oder was genau?
Ansonsten kannst du die hier mal näher anschauen: http://www.autoitscript.com/forum/topic/70…stview-progress http://www.autoitscript.com/forum/topic/12…rsion-9-oct-14/
Gruß,
UEZ
Bei mir friert nichts ein. Vielleicht liegt's daran, dass es bei mir relativ warm ist. Kann aber auch an meiner Aura liegen. ![]()
Spaß bei Seite. Welches BS benutzt du?
Gruß,
UEZ