Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Картинка при загрузке CorelDRAW 12 Добавлено: 31.05.06 22:31  

Автор вопроса:  Nikolai
В виде карандаша, интересно
здесь прозрачный фон или
такая форма.
Как сделать на VBNet 2005?

Ответить

  Ответы Всего ответов: 18  

Номер ответа: 1
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #1 Добавлено: 31.05.06 23:41
Как сделать на VBNet 2005?


        Me.TransparencyKey = Me.BackColor
        Me.BackgroundImage = New Bitmap("Gif or Png image with transparent layer";)
        Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None

Ответить

Номер ответа: 2
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #2 Добавлено: 01.06.06 20:30
Запихнул в авто загрузку но выдаёт ошибку
Это что сначало загружаеться моё окно ,
 а потом Framework?

Ответить

Номер ответа: 3
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #3 Добавлено: 01.06.06 21:21
1.Что запихнул?
2.Куда запихнул?
3.Как запихнул?
4.Значение слова "запихнул"?
5.Каком образом все твои "пихания" связаны с темой вопроса?

Ответить

Номер ответа: 4
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #4 Добавлено: 02.06.06 08:00
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Location = New System.Drawing.Point(670, 473) 'Это картинка которая перемещаеться
по экрану от нижнего правого до нижнего левого и в конце изчезает
        Me.TransparencyKey = Me.BackColor
        Me.BackgroundImage = New Bitmap("Tany.gif";)
        Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
    End Sub

    Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick
        Me.Close()
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If Me.Opacity <= 0 Then Me.Close()
        Me.Opacity = Me.Opacity - 0.1
    End Sub

    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
        If Me.Left <= 100 Then Timer1.Enabled = True
    End Sub

    Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
        Me.Left = Left - 1
    End Sub
End Class

Я закинул exeшник в автозагрузку но при запуске выскакивает ошибка,
с Framework кажись сначало грузиться форма, а потом Framework.

Ответить

Номер ответа: 5
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #5 Добавлено: 02.06.06 16:10
Текст ошибки в студию...

Ответить

Номер ответа: 6
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #6 Добавлено: 02.06.06 23:55
Я закинул exeшник в автозагрузку

Надеюсь ты картинку тоже туда же положил???
И вообще, использование относительных путей, есть дурной тон в программировании!
New Bitmap("Tany.gif";)

Избавляйся от дурной привычки таким образом указывать пути...

Ответить

Номер ответа: 7
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #7 Добавлено: 03.06.06 07:46

Unhandled exception has occurred in your application. if you click
Continue, the application will ignore this error and attempt to continue. If
you click Quit, the application will close immediately.
Parameter is not valid

Ответить

Номер ответа: 8
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #8 Добавлено: 03.06.06 10:56
Это не описание ошибки!!
Когда появляется это окно, там есть кнопка Detail -нажми её.. вот тогда и увидишь описание!

Ответить

Номер ответа: 9
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #9 Добавлено: 03.06.06 15:43
Хорошо , а каким образом указывать пути?

Ответить

Номер ответа: 10
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #10 Добавлено: 03.06.06 16:43
Путь должен быть указан полность.. либо относительно исполняемого файла, либо прописан жестко (что тоже не не есть good)
Иногда текущей директорией оказывается совсем не та, где лежит твой exe-шник, и в этом случае ты получишь ошибку..
Поэтому более предпочтительней является например такая запись..
Dim bitmapPath As String = System.IO.Path.Combine(My.Application.Info.DirectoryPath, "Tany.gif";)
        Dim MyBitmap As New Bitmap(bitmapPath)

Ответить

Номер ответа: 11
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #11 Добавлено: 04.06.06 16:44
Эрос на счёт ошибки при авто загрузке может попробуешь сам , а то там столько много написано но к этой ошибке помойму ничего не относиться, кстати путь прописал как ты сказал.

Ответить

Номер ответа: 12
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #12 Добавлено: 04.06.06 17:58
Тьфу ты ошибку можно скопировать:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: Parameter is not valid.
   at System.Drawing.Bitmap..ctor(String filename)
   at Прозрачное_окно.Form1.Form1_Load(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Прозрачное окно
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Documents%20and%20Settings/Tany/Главное%20меню/Программы/Автозагрузка/Прозрачное%20окно.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 8.0.0.0
    Win32 Version: 8.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Ответить

Номер ответа: 13
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #13 Добавлено: 04.06.06 18:53
А тут и пробовать нечего, и так все видно..
System.ArgumentException: Parameter is not valid.
   at System.Drawing.Bitmap..ctor(String filename)

Она твоей картинки не находит, значит путь указан неверно...

Ответить

Номер ответа: 14
Автор ответа:
 Nikolai



Вопросов: 23
Ответов: 58
 Профиль | | #14 Добавлено: 06.06.06 21:49
Хорошо при указании полного пути
всё работает но если установить
его на другой комп работать не будет
как сделать чтоб прога считала файл
(картинку) с той же папки где ЕХЕшник?
и ещё (так на будущее) любой файл хоть
тоже самое но в этой папке ещё одна папка
и вот из неё, как бы в папке с ЕХЕшником
есть папки с музыкой , папки с картинками
короче как в игрушках , прогах.
Эрос если можно толково обьяснить , а то этот
path вообще понять не могу

Ответить

Номер ответа: 15
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #15 Добавлено: 07.06.06 17:25
Nikolai,
да тут ничего сложного нет.. класс System.IO.Path предназначет для работы с путями, именами файлов и т.д.. Вот смотри, для удобства работы импортируем пространство имен..
Imports System.IO

Далее используем это:
Public Shared Function Combine(ByVal path1 As String, ByVal path2 As String) As String

Эта функция объеденяет из 2 путей делает 1(полный путь) и правильно расставляет все слэши (слэш- символ "\";). Чтобы ею воспользоваться, ты должен ей передать 2 параметра.. (path1 и path2)
Тебе надо,чтобы у тебя был путь к картинке,которая находится в той же папке, где и исполняемый файл (*.ехе) Поэтому первый параметр это будет путь к этой папке, а второй будет название картинки с расширением..
Поскольку у тебя VS2005, то для получения пути к ехе-шнику воспользуемся
My.Application.Info.DirectoryPath
эта функция возвращает путь к папке с *.ехе В качестве второго параметра передаем название твоей картинки. В результате имеем следующее:

        'Получаем путь к картинке (должна лежать возле *.ехе)
        Dim bitmapPath As String = Path.Combine(My.Application.Info.DirectoryPath, "Tany.gif";)

        'Проверяем наличие файла
        If Not File.Exists(bitmapPath) Then
            Throw New FileNotFoundException("Bitmap file not found!" & vbNewLine & bitmapPath)
        End If

        'Пытаемся её загрузить
        Try
            Dim MyBitmap As New Bitmap(bitmapPath)
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
        End Try


А если у тебя есть еще допольнительные папки, то к ним указать путь можно например так:
Dim soundPath As String = Path.Combine(My.Application.Info.DirectoryPath, "MySounds\sampleSound.wav";)

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам