Skip to main content

AccessTr.neT


Analog Saat Üzerinde Mouse İle Tıklayarak Saat Seçmek

Analog Saat Üzerinde Mouse İle Tıklayarak Saat Seçmek

#16
saat bul fonksiyonunu aşağıdakiyle değiştirip deneyebilirsiniz
Function SaatBul() As String

Dim UznTwips As Double
Dim SaatTxt, DkTxt As Integer
Dim Carpan, Teta As Single
Dim Aci As Integer
Dim Hassas As Byte
Dim SonDgr As Single

SaatBul = ""
If YTan = 0 Then Exit Function
SonDgr = Atn(XTan / YTan) * 180 / 3.142857 'radyan olan açıyı dereceye çevirmek için

If YTan < 0 Then Aci = 180 'çeyrekliklerin durumuna göre açı düzeltme
If XTan < 0 And YTan > 0 Then Aci = 360

SonDgr = 2 * (Aci + SonDgr)
UznTwips = Sqr((XTan) ^ 2 + (YTan) ^ 2) 'fare imlecinin resmin merkezine uzaklığı

Hassas = Me.selectivite
SonDgr = Round(SonDgr / Hassas) * Hassas '

SaatTxt = SonDgr \ 60 'dereceden saat ve dakikaya dönüştürme
DkTxt = SonDgr Mod 60

Carpan = YrCpDis 'kırmızı dairenin, çemberin dışında olmasını sağlar
If UznTwips < GcGn Then SaatTxt = SaatTxt + 12
SaatBul = Format(SaatTxt, "00") & ":" & Format(DkTxt, "00")

If SaatBul = TmpSaatBul Then Exit Function
Me.LblSaat.Caption = SaatBul


Teta = Pi * SonDgr / 360 '(Atn(XTan / YTan) + Aci * Pi / 180) '
Me.BtnKnm.Top = IIf(BtnX + YariCap * (1 - (Carpan) * Cos(Teta)) < 1, 1, BtnX + YariCap * (1 - (Carpan) * Cos(Teta)))
Me.BtnKnm.Left = IIf(BtnY + YariCap * (1 + (Carpan) * Sin(Teta)) < 1, 1, BtnY + YariCap * (1 + (Carpan) * Sin(Teta)))

TmpSaatBul = SaatBul
End Function
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
RE: Analog Saat Üzerinde Mouse İle Tıklayarak Saat Seçmek - Yazar: berduş - 18/05/2020, 15:50
Task