Mover objetos (botões) no form

24/04/2007

0

Salve!!!

Estou fazendo meu projeto final para a faculdade, e em uma das aplicações, precisarei que o usuário possa alterar a posição dos botões. Como fazer isso?


Responder

Posts

06/09/2007

Léu

Olá,

Se for o que entendi.
Coloque o código no evento MouseMove do Butão.

VB 6

If Button = 1 Then
SeuButão.Left = SeuButão.Left + X
SeuButão.Top = SeuButão.Top + Y
End If

VB 2005

Dim X, Y As Single
X = e.Location.X
Y = e.Location.Y
If e.Button = Windows.Forms.MouseButtons.Left Then
SeuButão.Left = SeuButão.Left + X
SeuButão.Top = SeuButão.Top + Y
End If


Responder

07/04/2008

Tzapquiel

Adorei o codigo mas gostaria de saber como salvo a posição do botão pra quando abrir denovo o programa?


Responder

07/04/2008

Groove

depende de onde quer que seja salvo essas configurações
banco de dados
arquivo de texto ou xml (heheh)
chave de registro

cada um deles é um modo diferente


Responder

07/04/2008

Tzapquiel

gostaria de salvar no xml assim o programa pode carregar a posição na hora que abre :lol:


Responder

08/04/2008

Groove

primeiramente fiz em c# funcionou blz, gravando o XML na raiz C:, depois fiz VBnet mas precisa testar pra ve se funciona legal

Private Function MontaXML(ByVal X As Integer, ByVal y As Integer) As String
        ´estancia a variavel para escrever o xml
        Dim stringbuilder As StringBuilder = New StringBuilder
        ´ ESCREVE O XML 
        stringbuilder.Append("<MontaXML>")
        stringbuilder.Append(("<Horizontal>"  _
                        + (X + "</Horizontal>")))
        stringbuilder.Append(("<Vertical>"  _
                        + (y + "</Vertical>")))
        stringbuilder.Append("</MontaXML>")
        ´ RETORNA UMA STRING NO FORMATO XML 
        Return stringbuilder.ToString
    End Function
    
    Private Sub GravaXML()
        Dim NomeArquivoXML As String = "c:\\ConfiguraPosicaoBotao.xml"
        ´aqui passei valores ficticios no qual será passa a posicao atual q está o botão
        Dim XML As String = MontaXML(20, 20).ToString
        ´estanciando a variavel oFile pedindo permiss�o para gravar no arquivo
        Dim oFil As FileStream = New FileStream(NomeArquivoXML, FileMode.Append, FileAccess.Write)
        ´estanciando a variavel oWriter
        Dim oWrite As StreamWriter = New StreamWriter(oFil)
        ´escrevento no arquivo
        oWrite.WriteLine(XML)
        ´fechando
        oWrite.Close
        oFil.Close
    End Sub



não deixe de responder se funcionou!!!

Valew

Tomara eu ter ajudado


Responder

08/04/2008

Groove

Alias o codigo acima vc vai incluido uma linha ( ou melhor uma configuração abaixo da outra como um texto)
exemplo:
MontaXML><Horizontal>20</Horizontal><Vertical>30</Vertical></MontaXML>


para q isso não aconteça um modo rápido de fazer e excluir o arquivo pois ele cria outro automaticamente, basta inserir a linha
File.Delete(NomeArquivoXML)

antes da linha
Dim oFil As FileStream = New FileStream(NomeArquivoXML, FileMode.Append, FileAccess.Write)



Responder

08/04/2008

Groove

Alias o codigo acima vc vai incluido uma linha ( ou melhor uma configuração abaixo da outra como um texto) exemplo:
MontaXML><Horizontal>20</Horizontal><Vertical>30</Vertical></MontaXML>
para q isso não aconteça um modo rápido de fazer e excluir o arquivo pois ele cria outro automaticamente, basta inserir a linha
File.Delete(NomeArquivoXML)
antes da linha
Dim oFil As FileStream = New FileStream(NomeArquivoXML, FileMode.Append, FileAccess.Write)


desculpe mas como aqui naum podemos editar tive q postar novamente
o exemplo certo seria assim

<MontaXML><Horizontal>20</Horizontal><Vertical>30</Vertical></MontaXML>
<MontaXML><Horizontal>30</Horizontal><Vertical>50</Vertical></MontaXML>
<MontaXML><Horizontal>60</Horizontal><Vertical>20</Vertical></MontaXML>
<MontaXML><Horizontal>40</Horizontal><Vertical>70</Vertical></MontaXML>



Responder

08/04/2008

Tzapquiel

mano vc é o cara mesmo!! hehehe
legal olha eu vou fazer alguns testes pra ver mas na primeira tentativa funfou legal mano!!
vc não quer me ajudar com o outro topico de exibir os icones de uma pasta ?


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar