Как непрерывно просматривать изображения в visualbasic - PullRequest
0 голосов
/ 04 июля 2019

Я сейчас пишу опрос о питании. Пользователи одной страницы могут использовать клавиши со стрелками для переключения между размерами порций пищи. Есть 49 изображений каждого предмета. В настоящее время, если вы удерживаете клавишу со стрелкой вниз, она приостанавливается и переключается на изображение только после отпускания. Мне бы хотелось, чтобы он показывал каждое пройденное изображение, а не пропускал все.

Я пытался использовать цикл while и предложение if вместо select case, но просто заморозил программу и, если у меня возникла такая же проблема

Это класс для переключения между изображениями и определения ключей

Public Class Carousel
    Public Shared Function Slideshow(picturebox As Object, food As String, key As Object, file As Object)
        Dim fullPath As String = IO.Path.GetFullPath(My.Resources.ResourceManager.BaseName)
        fullPath = fullPath.Replace("\bin\Debug\Study_1b.Resources", "")
        Dim bHandled As Boolean
        Select Case key
            Case Keys.Right
                If file.count < 49 Then
                    file.count += 1
                    picturebox.Image = Image.FromFile(fullPath & $"\Resources\{food}_{file.count}.jpg")
                    bHandled = True
                End If
            Case Keys.Left
                Console.WriteLine(file.count)
                While file.count > 0
                    file.count -= 1
                    picturebox.Image = Image.FromFile(fullPath & $"\Resources\{food}_{file.count}.jpg")
                    bHandled = True
                End While
        End Select
    End Function
End Class

Это часть, из которой он загружен и называется

    Private Sub ES1Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Me.KeyPreview = True
        count = Random.rndCount()
        fullPath = fullPath.Replace("\bin\Debug\Study_1b.Resources", "")
        pbes21.Image = Image.FromFile(fullPath & $"\Resources\Por_{count}.jpg")
    End Sub

    Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
        Carousel.slideshow(pbes21, "Por", keyData, Me)
    End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...