none
system.drawing RRS feed

  • Pergunta

  • Olá, eu estou fazendo uma engine basica de jogos 2D e as configurações dela são salva em .ini e queria q de acordo o .ini mudava a font escrita la mudava a font no programa, eu usei esta codigo para ler o .ini 

    LerArquivo("C:\meuini.ini", "[Menu]", "Font", "não definido")

    Deu td certo e coloquei uma coisas a mais, so q meu problema como faço para converter isto para poder usar assim:

    playtxt.Font = LerArquivo("C:\meuini.ini", "MENUINICIO", "FontTexto", "nao definido")

    alguem me ajuda? OBS: eu quero converter isso para q eu posso usar tipo assim, tbm estava com o mesmo problema para mudar a cor com o .ini mais consegui usando este codigo:

    playtxt.ForeColor = System.Drawing.ColorTranslator.FromHtml(LerArquivo("C:\meuini.ini", "MENUINICIO", "NCordoTexto", "nao definido"))


    brunocrazye321

    sábado, 10 de janeiro de 2015 17:26

Respostas

  • Criei um código que converte uma Font para String e vice-versa:

    Dim fontStr As String = SystemFonts.CaptionFont.Name + ";" + SystemFonts.CaptionFont.Size.ToString()
    
    Dim newFont As Font = New Font(Strings.Split(fontStr, ";")(0), Single.Parse(Strings.Split(fontStr, ";")(1)))

    Espero ter ajudado.


    Herbert Lausmann

    • Marcado como Resposta vbcrazye segunda-feira, 12 de janeiro de 2015 19:11
    segunda-feira, 12 de janeiro de 2015 12:09

Todas as Respostas

  • Olá,

    Quais seriam os parâmetros do método LerArquivo? O que vem a ser "MENUINICIO", "NCordoTexto" e "nao definido"?


    Herbert Lausmann

    sábado, 10 de janeiro de 2015 19:20
  • Private Declare Auto Function WritePrivateProfileString Lib "Kernel32" (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Integer

    Eu coloco este codigo acima no começo e depois tbm coloco este abaixo

        Private Function LerArquivo(ByVal arquivo As String, ByVal secao As String, ByVal chave As String, ByVal valorPadrao As String) As String
    
            Dim strBuilder As New System.Text.StringBuilder(1000)
            GetPrivateProfileString(secao, chave, valorPadrao, strBuilder, 1000, arquivo)
            Return strBuilder.ToString
    
        End Function

    MENUINICIO e o nome q esta dentro da chave = [MENUINICIO]...NCordodoTexto = Red etc.. e a cor q o programa vai ler depois do = ... e a mesma coisa eu queria fazer com a font, com a cor deu certo


    Help!

    domingo, 11 de janeiro de 2015 13:24
  • Criei um código que converte uma Font para String e vice-versa:

    Dim fontStr As String = SystemFonts.CaptionFont.Name + ";" + SystemFonts.CaptionFont.Size.ToString()
    
    Dim newFont As Font = New Font(Strings.Split(fontStr, ";")(0), Single.Parse(Strings.Split(fontStr, ";")(1)))

    Espero ter ajudado.


    Herbert Lausmann

    • Marcado como Resposta vbcrazye segunda-feira, 12 de janeiro de 2015 19:11
    segunda-feira, 12 de janeiro de 2015 12:09
  • Ainda não testei mais vou testa marquei como melhor resposta pela atenção em me ajudar :) mais espero que dei certo eu consegui fazer mudar o tamanho da fonte declarando ela com uma nova font "new" mais vou testar o codigo q vc me passou :):):):):) :D

    Help!

    segunda-feira, 12 de janeiro de 2015 19:13