Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Steuerelemente im Uhrzeigersinn einfügen

Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 16:18:35
Siegfried
Hallo zusammen,
ich habe den nachfolgenden Code zum Einfügen von Steuerelementen im Uhrzeigersinn in ein Formular.
Der Code funktioniert mit der Einschränkung, dass das erste Element auf 3 Uhr eingefügt wird.
Wie muss ich es anstellen, das das erste Element auf 1 Uhr eingefügt wird?
Danke für jede Hilfe im Voraus und Gruß
Siegfried
Sub Anordnung_Stunde()
Dim Obj_OptStunde As MSForms.OptionButton   ' Variable für ein neues Steuerelement
Dim Cnt As Control     ' Variable für ein beliebiges Control
Dim n1 As Integer
Dim Startzeit As Integer, CosWinkel As Double, SinWinkel As Double
Dim Radius As Integer, Winkeldrehung As Double, Winkel As Double
Dim AnzElemente As Integer, MittelpunktLeft As Integer, MittelpunktTop As Integer
Radius = Frm_Uhr.Height / 2 / 12 * 11 - 3
Winkeldrehung = 360 / 12
AnzElemente = 360 / Winkeldrehung
MittelpunktLeft = Radius
MittelpunktTop = Radius
MittelpunktLeft = Frm_Uhr.Width / 2 - 12
MittelpunktTop = Frm_Uhr.Height / 2 - 12
' fügt 12 OptionButton-Steuerelemente für die Uhrzeiten ein
' das erste Element wird (gesteuert vom System) auf 3 Uhr beginnend eingefügt
For n1 = 1 To AnzElemente
SinWinkel = Radius * Sin(Winkel / 180 * Application.Pi)
CosWinkel = Radius * Cos(Winkel / 180 * Application.Pi)
Set Obj_OptStunde = _
Frm_Uhr.Controls.Add("Forms.OptionButton.1", "Stunde" & n1, True)
With Obj_OptStunde
.Left = MittelpunktLeft + CosWinkel
.Top = MittelpunktTop + SinWinkel
.Caption =n1
.AutoSize = True
End With
Next n1
Set Obj_OptStunde = Nothing
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 16:39:42
Daniel
Hi
0° scheint wohl bei 3 Uhr zu liegen.
Also musst du zum Startwinkel noch 60° abziehen oder hinzufügen, je nach ausrichtung und umgerechnet in Bogengrad.
Gruß Daniel
AW: Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 17:16:02
onur
Mit Mathe und Trigonometrie hast du wohl nicht viel am Hut, oder ?
0 Grad in Trigonmetrie ist die 3 Uhr-Stellung!
Guckst du hier:
https://www.herber.de/bbs/user/141234.xlsm
AW: Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 17:45:25
Siegfried
Hi onur,
Vielen Dank, so funktioniert es.
Du hast ja Recht mit Deiner Feststellung hinsichtlich der Trigonometrie, ist bei mir allerdings schon etwas länger her (letzter Schultag auf der Volksschule, so hieß das damals, war vor genau 66 Jahren).
Vielleicht kannst Du mir aber das noch erklären:
n1 = (n + 9) Mod 12
Gruß
Siegfried
Anzeige
AW: Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 17:50:53
onur
Damit wird aus 30° bis 360° (1 bis 12 x30) 300° (1-Uhr-Stellung bis 270° (12-Uhr-Stellung).
AW: Steuerelemente im Uhrzeigersinn einfügen
01.11.2020 17:57:26
onur
Du kannst aber stattdessen auch das hier machen:
        With Obj_OptStunde
.Left = MittelpunktLeft + SinWinkel
.Top = MittelpunktTop - CosWinkel
.Caption = n
.AutoSize = True
End With

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige