Лучшее событие для инициализации шрифтов - PullRequest
0 голосов
/ 28 февраля 2019

В программе (VB .NET) я даю пользователям возможность настраивать шрифты различных элементов управления (текстовое поле, форма, метка, представление данных ...) На данный момент я использую подпрограмму в своей базовой форме (все остальные формы наследуются от него), которые просматривают все элементы управления и дают им шрифт, сохраненный в настройках (он МОЖЕТ быть различным для каждого типа элемента управления).Я использую эту процедуру, потому что я могу замораживать форму (макет и чертеж) во время переопределения шрифта, чтобы избежать мигания формы при изменении размера всего элемента управления)

Какое событие подходит для этого?В настоящее время я использую "OnControlCreated".Но лучше ли это делать в другом месте?как в New, в OnHandleCreated, OnLoad ...

(надеюсь, мой вопрос понятен, я француз)

1 Ответ

0 голосов
/ 28 февраля 2019

У меня похожий код в программе, которая меняет шрифт и размер текста в каждой форме / отличается для каждого пользователя.Я использую OnLoad, и с этим все в порядке.

    Dim Different_Font As Font = New Font("Calibri", 10)
    Public Sub CheckFont(frm As Form)
        For Each ctl As Control In frm.Controls
            If ctl.HasChildren Then
                CheckFont_Children(ctl)
            End If
            Try
                ctl.Font = DifferentFont
            Catch ex As Exception
            End Try
        Next
    End Sub

    Private Sub CheckFont_Children(parent As Control)
        For Each ctl In parent.Controls
            If ctl.HasChildren Then
                CheckFont_Children(ctl)
            End If
            Try
                ctl.font = DifferentFont
            Catch ex As Exception
            End Try
        Next
    End Sub

В вызове события загрузки формы ...

Private Sub Frm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    CheckFont(Me)
End Sub

Это не похоже на изменение размеров каких-либо элементов управления, которые могутбудь хорошим или плохим для тебя .. Бон Шанс!;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...