Это начальная версия моей программы, в данный момент она доработана по моему вкусу. Тем кому надо, ни что не мешает подкрутить ее под себя.
Код:
UseJPEGImageEncoder()
sohr.s
If ReadFile(0, "UcScrin.ini")
For xx=1 To 4
poip$=ReadString(0)
Select xx
Case 1
Resultat=Val(poip$)
Case 2
shirina=Val(poip$)
Case 3
visota=Val(poip$)
Case 4
sohr$=poip$
EndSelect
Next xx
CloseFile(0)
Else
MessageRequester("Сообщение","Невозможно открыть файл UcScrin.ini !")
EndIf
If OpenWindow(0, 100, 150, 300, 100, "PureBasic - SysTray Example", #PB_Window_SystemMenu | #PB_Window_Invisible)
EndIf
IconN$ = "1.ico"
AddSysTrayIcon(1, WindowID(0),LoadImage(1,IconN$))
SysTrayIconToolTip(1, "UcScrin")
CreatePopupMenu(0)
MenuItem(1, "Настройки")
MenuBar()
MenuItem(10, "Выход")
Q = 0
Repeat
Sleep_(1)
For r=40 To 50
Event = WaitWindowEvent(10)
If Event = #PB_Event_SysTray
If EventType() = #PB_EventType_RightClick
DisplayPopupMenu(0, WindowID(0))
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 4
CloseWindow(1)
If OpenFile(0, "UcScrin.ini")
WriteStringN(0, Str(Resultat))
WriteStringN(0, Str(shirina))
WriteStringN(0, Str(visota))
WriteStringN(0,sohr$)
CloseFile(0)
EndIf
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 7
CloseWindow(1)
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 3
Resultat = GetGadgetState(3)
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 2
shirina = GetGadgetState(2)
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 1
visota = GetGadgetState(1)
EndIf
EndIf
If Event = #PB_Event_Gadget
If EventGadget() = 14
sohr$ = PathRequester("Папка сохранения скриншота", "")
SetGadgetText(12,sohr$)
Debug sohr$
EndIf
EndIf
If Event = #PB_Event_Menu
Select EventMenu()
Case 1
If OpenWindow(1, 300, 200, 300, 450,"Настройки", #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
TrackBarGadget(3, 30, 200, 230, 50, 1, 10,#PB_TrackBar_Ticks)
SetGadgetState(3, Resultat)
TextGadget(5, 30, 180, 50, 20, "Плохое")
TextGadget(6, 230, 180, 50, 20, "Отличное")
TextGadget(8, 120, 150, 70, 20, "КАЧЕСТВО:")
TextGadget(9, 120, 50, 70, 20, "РАЗМЕРЫ:")
TextGadget(10, 65, 80, 70, 20, "Ширина")
TextGadget(11, 185, 80, 70, 20, "Высота")
EditorGadget(12, 10, 280, 280, 20)
SetGadgetText(12,sohr$)
TextGadget(13, 10, 260, 180, 20, "ПУТЬ К СКРИНШОТУ:")
ButtonGadget(14, 230, 310, 60, 20,"Сменить")
ButtonGadget(4, 30, 400, 100, 30,"Принять")
ButtonGadget(7, 170, 400, 100, 30,"Отмена")
SpinGadget(2, 60, 100, 70, 20, 10, 1200,#PB_Spin_Numeric)
SetGadgetState (2, shirina)
SpinGadget(1, 180, 100, 70, 20, 10, 1200,#PB_Spin_Numeric)
SetGadgetState (1, visota)
EndIf
Case 10
Q = 1
EndSelect
EndIf
If Q=1
End
EndIf
If GetAsyncKeyState_(r)<>0
If r=#VK_SNAPSHOT
GetClipboardImage(0)
ResizeImage(0, shirina, visota)
If SaveImage(0,sohr$+"new.jpeg",#PB_ImagePlugin_JPEG,Resultat)
ClearClipboard()
EndIf
EndIf
EndIf
Next r
ForEver