Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: 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

Anzeige

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
Anzeige
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

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige