Aber ich hab noch ne kleine Änderung:
Dann werden die Hotkeys aber immer wieder gesetzt.
Das ist nicht besonders CPU-freundlich.
Aber ich hab noch ne kleine Änderung:
Dann werden die Hotkeys aber immer wieder gesetzt.
Das ist nicht besonders CPU-freundlich.
Hi,
ich hab nix zu tun gehabt und hab mal einen Anfang gebastelt :).
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
; hier Anzahl von Reihen anpassen
Global $reihen = 10
Global $button[(7 * $reihen) + 2], $counter = 1, $description[(7 * $reihen) + 1][2] = [["", ""],["1", ""],["2", ""],["3", ""],["+", ""],["x²", "^2"],["sin", ""],["C", "sondertaste"],["4", ""],["5", ""],["6", ""],["-", ""],["x^-1", "^-1"],["cos", ""],["CE", "sondertaste"],["7", ""],["8", ""],["9", ""],["*", ""],["^", ""],["tan", ""],["PI", "3,14"],["0", ""],[".", ""],["(-)", "-"],["/", ""],["(", ""],[")", ""]]
[/autoit] [autoit][/autoit] [autoit]$MainGUI = GUICreate("Calculator", 290, 50 + ($reihen + 1) * 40)
$input = GUICtrlCreateInput("", 10, 10, 270, 30, $ES_RIGHT)
For $j = 50 To $reihen * 40 + 40 Step 40
For $i = 10 To 250 Step 40
$button[$counter] = GUICtrlCreateButton($description[$counter][0], $i, $j, 30, 30)
$counter += 1
Next
Next
$button[$counter] = GUICtrlCreateButton("ENTER", 10, 50 + $reihen * 40, 270, 30)
GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]While 1
$msg = GUIGetMsg()
For $i = 1 To $counter - 1
If $msg = $button[$i] Then
If $description[$i][1] = 'sondertaste' Then
Switch $description[$i][0]
Case 'C'
GUICtrlSetData($input, "")
Case 'CE'
GUICtrlSetData($input, "Viel Spass beim basteln")
EndSwitch
ElseIf $description[$i][1] <> '' Then
GUICtrlSetData($input, GUICtrlRead($input) & $description[$i][1])
Else
GUICtrlSetData($input, GUICtrlRead($input) & $description[$i][0])
EndIf
EndIf
Next
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $button[$counter]
$var = Execute(GUICtrlRead($input))
If Not @error Then
GUICtrlSetData($input, $var)
Else
GUICtrlSetData($input, "Error!")
EndIf
EndSwitch
WEnd
Man kann die Anzahl der Reihen ganz einfach anpassen und auch ganz einfach neue Befehle hinzufügen. In der 1. Spalte des Arrays stehen die Captions der Buttons und in der 2. die Rechenoperatoren. Wenn in der 2. Spalte "" steht, dann werden die Captions als Operatoren (1. Spalte) genommen. Wenn man in der 2. Spalte 'sondertaste' schreibt, kann man ihr einen selbst definierten Befehl zuweisen.
Wie gesagt das ist nur ein Anfang, es gibt auch schon tausende Taschenrechner, deshalb ist es eigentlich unnötig noch einen zu schreiben, aber ich hatte grad lust was zu machen.
@L3viathan2142 du nervst!
1. Wenn man nicht weiß wies geht, kann man auch nicht anders arbeiten. Du bist auch nicht als Profi vom Himmel gefallen.
2. Es ist überhaupt keine Supportanfrage.
3. Haben jetzt schon 2 Leute vor dir genau das selbe gesagt.
4. Bestehen 90% deiner Posts aus so einem Schrott, mit dem keiner irgendetwas anfangen könnte.
anno2008
Ich glaube du hast noch nicht verstanden, was das Tool machen soll.
doch
Wenn ich z.B. die Taste 2 betätige, soll er nicht die zwei schreiben, sonder die Anführungszeichen.
Wo ist das Problem, du hast mein Script nicht ausprobiert, oder?
anno2008
Hi,
also dein Script frisst ziemlich viel Prozessor.
Ich würde da eher Hotkeyset benutzen ...
z.B.:
Global $send = True, $send2 = True
[/autoit] [autoit][/autoit] [autoit]While 1
If WinActive("[CLASS:SciTEWindow]", "") Then
If $send Then
HotKeySet("{2}", "_send2")
HotKeySet("{4}", "_send")
$send = False
$send2 = True
EndIf
ElseIf $send2 Then
HotKeySet("{2}")
HotKeySet("{4}")
$send2 = False
$send = True
EndIf
Sleep(50)
WEnd
Func _send()
Send("$")
EndFunc ;==>_send
Func _send2()
Send('"')
EndFunc ;==>_send2
Hi,
ganz ehrlich, ich kann Boards, in denen es so komische Bedankautomaten gibt nicht leiden.
Im Endeffekt verläuft das ganze dann so, dass jeder "Danke" sammelt.
Dann wird erwartet, dass jeder Post mit einem Danke versehen wird, damit man sein "Level" steigern kann.
Im Moment sind sowieso einige Leute hier, die das alles ein bisschen kindisch angehen :P.
Mir ist es ehrlich gesagt egal, welchen Benutzerrang ich habe, oder welchen Benutzerrang andere haben. Man bekommt schon so seinen ersten Eindruck, aber ich denke jeder muss für sich selber entscheiden, wie er einen anderen Einstuft. Und ich glaube nicht, dass sich das ändert, wenn man Danke sammelt.
Mmh, ok ...
Ich hab mir den Thread hier nicht durchgelesen, ich hab nur deinen Post gesehen und hab gedacht ich würde was sinnvolles beitragen können.
Tut mir leid
Das müsste mit dem Gaußschen Algorithmus doch noch relativ einfach umzusetzen sein, oder?
Den haben mir grad in Mathe gelernt und unser Mathelehrer hat gemeint, dass der Algorithmus in der Informatik relativ leicht umgesetzt werden kann und dort auch sehr oft benutzt wird.
Kann man ja mal ausprobieren :P.
Nein, das geht auf die Art und weise leider nicht.
PixelChecksum errechnet eine Prüfsumme. Allerdings wird beim verändern von nur 1 Pixel die komplette Prüfsumme verändert.
PixelChecksum ist also nur dazu geeignet zu prüfen, ob sich 2 Bereiche unterscheiden. Wenn sie exakt gleich sind, dann haben sie auch die gleiche Checksum, wenn nicht, können sich die komplett voneinander unterscheiden.
Hi,
Switch MsgBox(4, "Beenden", "Wollen Sie das Programm wirklich beenden?")
Case 6
Exit
Case 7
ContinueCase
EndSwitch
While 1
ToolTip("Das Programm ist nicht aus :D")
Sleep(10)
WEnd
Rückgabewerte siehe Hilfe:
Zitat von HIlfeAlles anzeigen
OK 1
CANCEL 2
ABORT 3
RETRY 4
IGNORE 5
YES 6
NO 7
TRY AGAIN ** 10
CONTINUE ** 11
(\d+)
\.*
\d*
\z
DB71.DBX20.3
M14.2
MD44 (Punkt danach existiert nicht, deshalb das * ; Zahl danach existiert nicht, deshalb das *)
DB13.DBW2880 (Punkt danach existiert nicht, deshalb das * ; Zahl danach existiert nicht, deshalb das *)
2157.95.txt
2219.86
Ich hab grad auch Glück gehabt.
Manchmal kommen die Köpfe immer schön hintereinander und manchmal alle auf einmal :).
So schwer ist das doch gar nicht...
naja...
Du musst Klammern beachten. Du musst alle möglichen Rechenregeln beachten. So einfach ist das nicht, nur ich denke Oscar hat es auf den Punkt gebracht:
Zitat von OscarDa fehlt irgendwie der Kick...
Hi,
so in etwa?
#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiTab.au3>
; Create GUI
$hGUI = GUICreate("Test", 300, 200)
$hTab = GUICtrlCreateTab(2, 2, 396, 296)
; Create images
$hImage = _GUIImageList_Create(16, 16, 5, 3)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 13)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 14)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 15)
_GUICtrlTab_SetImageList($hTab, $hImage)
$tab0 = GUICtrlCreateTabItem("Tab 0")
$lab1 = GUICtrlCreateLabel("Label1", 30, 60)
$but1 = GUICtrlCreateButton("Button1", 30, 90)
$rad1 = GUICtrlCreateRadio("Radio1", 30, 120)
$che1 = GUICtrlCreateCheckbox("Check1", 30, 150)
$lab2 = GUICtrlCreateLabel("Label2", 120, 60)
GUICtrlCreateTabItem("")
$tab1 = GUICtrlCreateTabItem("Tab 1")
$but2 = GUICtrlCreateButton("Button2", 120, 90)
$rad2 = GUICtrlCreateRadio("Radio2", 120, 120)
$che2 = GUICtrlCreateCheckbox("Check2", 120, 150)
GUICtrlCreateTabItem("")
$tab2 = GUICtrlCreateTabItem("Tab 2")
$lab3 = GUICtrlCreateLabel("Label3", 210, 60)
$but3 = GUICtrlCreateButton("Button3", 210, 90)
$rad3 = GUICtrlCreateRadio("Radio3", 210, 120)
$che3 = GUICtrlCreateCheckbox("Check3", 210, 150)
GUICtrlCreateTabItem("")
GUICtrlSetState($tab0, $GUI_SHOW)
[/autoit] [autoit][/autoit] [autoit]_GUICtrlTab_SetItem($hTab, 0, -1, -1, 0)
_GUICtrlTab_SetItem($hTab, 1, -1, -1, 1)
_GUICtrlTab_SetItem($hTab, 2, -1, -1, 2)
GUISetState()
[/autoit] [autoit][/autoit] [autoit]Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
Woher weiß ich nur, dass das nicht erfunden ist :D.
Ich komme mit meinem "sehenden" Computer auf 2586.56 :P.
Ich bzw der Computer hatb 2583.2. Der "sieht" einfach schneller als ich...
Zitat von ForenregelnFolgende Inhalte sind nicht erwünscht oder gar komplett verboten. [...]
- Bots für Spiele jeglicher Art, insbesondere Onlinespiele und ganz besonders Silkroad Online sowie World of Warcraft
Hi und willkommen im Forum :),
man kann den Wert bestimmt viel geschickter auslesen, als den Quelltext auszuwerten, aber ich weiß nicht wie (gell Stilgar :P).
#include <Inet.au3>
#include <GDIPlus.au3>
#include <WinAPI.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
InetGet("http://www.ariva.de/chart/images/chart.m?secu=3399&t=year&size=M&nocache=1&volume=0&boerse_id=8&clean_payout=1¤cy=EUR", @TempDir & "\boerse.png", 1)
$source = StringRegExp(_INetGetSource("http://www.ariva.de/fonds/profil.m?secu=3399"), '<td class="arrow0" style="font-size: 20px; padding: 5px 0px 5px 3px">(.*?) €</td>', 3)
$hGUI = GUICreate("", 375, 250)
GUICtrlCreateLabel("Rücknahmepreis: " & $source[0], 10, 228)
; Load PNG image
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile(@TempDir & "\boerse.png")
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
GUIRegisterMsg($WM_PAINT, "MY_WM_PAINT")
GUISetState()
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; Clean up resources
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
; Draw PNG image
Func MY_WM_PAINT($hWnd, $Msg, $wParam, $lParam)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_UPDATENOW)
_GDIPlus_GraphicsDrawImage($hGraphic, $hImage, 0, 0)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_VALIDATE)
Return $GUI_RUNDEFMSG
EndFunc ;==>MY_WM_PAINT
anno2008
/Edit:
Ich weiß nicht wies mit dem Copyright von Ariva.de aussieht. Darf man da einfach so Daten weiterverarbeiten?
OpenGL setzt sich logischerweise über die normale Oberfläche.
Da muss man größere Eingriffe in das Spiel vornehmen, was nicht ganz einfach ist und womit man sich lange beschäftigen muss.
Abgesehen davon haben die Spiele dann normalerweise einen Schutz, der solche Eingriffe verhindert, wodurch wir dann wieder bei den Forenregeln wären...
Das einzige, was ich mir vorstellen kann ist, dass der Treiber der Karten die Helligkeits-/Kontrastwerte verändert, sodass die Farben nicht mehr stimmen.
HI,
in der Deutschen Hilfe ist die Hilfe des Befehls wirklich noch nicht vorhanden ;).
Folgendes Beispiel gibt die Englische Hilfe:
#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GDIPlus.au3>
#include <ScreenCapture.au3>
Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]_Main()
[/autoit] [autoit][/autoit] [autoit]Func _Main()
Local $hBitmap1, $hBitmap2, $hImage1, $hImage2, $hGraphic
; Initialize GDI+ library
_GDIPlus_Startup()
; Capture full screen
$hBitmap1 = _ScreenCapture_Capture("")
$hImage1 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap1)
; Capture screen region
$hBitmap2 = _ScreenCapture_Capture("", 0, 0, 400, 300)
$hImage2 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap2)
; Draw one image in another
$hGraphic = _GDIPlus_ImageGetGraphicsContext($hImage1)
_GDIPlus_DrawImagePoints($hGraphic, $hImage2, 100, 100, 600, 170, 130, 570)
; Draw a frame around the inserted image
_GDIPlus_GraphicsDrawRect($hGraphic, 100, 100, 400, 300)
; Save resultant image
_GDIPlus_ImageSaveToFile($hImage1, @MyDocumentsDir & "\GDIPlus_Image.jpg")
; Clean up resources
_GDIPlus_ImageDispose($hImage1)
_GDIPlus_ImageDispose($hImage2)
_WinAPI_DeleteObject($hBitmap1)
_WinAPI_DeleteObject($hBitmap2)
; Shut down GDI+ library
_GDIPlus_Shutdown()
EndFunc ;==>_Main
[/autoit]Hi,
$text = 'gfJ"hkjfdsafhsdj"hjfd"hjgfsa"hh"Hhh"'
MsgBox(0,"Text vorher", $text)
$text = StringReplace($text, '"', "")
MsgBox(0,"Text nachher", $text)
/Edit:
Hab erst zu spät gesehn, dass du es schon gelöst hast :S.
Naja, dann siehst du jetzt wenigstens, dass es auch ohne Chr(34) geht :P.