Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Задачи на Visual Basic (VB).

Автор: Stitchi16
Дата сообщения: 09.12.2008 11:24
Не понятно, пишет: datPrimaryRS - не объявлен и a то же не объявлен, и как будет выглядеть в access матрица? Надо же создавать таблицу и т.д. Объясните пожалуйста. А размер матрицы я привёл как для примера, она может быть и 2 на 3 и 10 на 10...
Автор: zolivan
Дата сообщения: 09.12.2008 12:08
Сорри, сам перекинул пост в другую ветку.
Автор: TURNSKIN85
Дата сообщения: 09.12.2008 14:28
не туда запостил.
прошу прощения
Автор: Legio
Дата сообщения: 09.12.2008 19:30
Shader378
1. Замени в "сортировках" верхнюю границу For'а на 9 (как я и написал, выходишь за границы массива).
2. Сортировка у тебя работает некорректно При таком решении "в лоб" цикла должно быть два (один вложен в другой).
Поясню на примере:
1,2,3,4,7,6,8,11,9,5
После сортировки по возрастанию станет:
1,2,3,4,6,7,8,9,5,11

И тут остаётся либо жать на кнопку сортировки, пока не текст в Text1 не перестанет меняться, либо написать сортировку корректно -- чтобы всё работало с одного нажатия
Автор: Shader378
Дата сообщения: 09.12.2008 20:31
Legio спасибо тебе огромное... у меня заработала по совершенно другому алгоритму))))

1) находим минимальное щначение из 1 до 10 и ставим его на первое место
2) находим минимальное значение из 2 до 10 и ставим его на первое место в интервале от 2 до 10 место и т.д


Автор: Mont1
Дата сообщения: 10.12.2008 04:55
Stitchi16

Цитата:
datPrimaryRS - не объявлен и a то же не объявлен

a - это твоя матрица, которую надо экспортировать
datPrimaryRS - это имя adobc объекта


Цитата:
А размер матрицы я привёл как для примера, она может быть и 2 на 3 и 10 на 10...

Используй вложенные циклы

datPrimaryRS.Recordset.MoveFirst
for i=1 to т
for j=1 to m
a(i,j)=datPrimaryRS.Recordset.Fields(j-1)
next j
datPrimaryRS.Recordset.MoveNext
next i


Цитата:
Надо же создавать таблицу

sub NewTable
Dim db As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strConn As String
Dim strSQL As String
pathMDB = "C:\BD.mdb"
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & pathMDB
Set db = New ADODB.Connection
db.Open strConn
strSQL = "create table newtable (Pole1 varchar(10), Pole2 varchar(10), ...... )" ' SQL запрос на создание таблицы
db.Execute strSQL, , adCmdText + adExecuteNoRecords
db.Close
Set db = Nothing
End Sub
Автор: dimeon91
Дата сообщения: 11.12.2008 18:44
Добрый день, помогите, пожалуйста, с написанием программы.
нужно создать форму с тремя объектами combobox (страны, столицы, конституционный строй) и меткой, которая не видна при загрузке.
При выборе элемента из любого списка формируется автоматически формируется строка, а в метке отображается содержимое элементов.
Автор: Pantalone
Дата сообщения: 12.12.2008 00:37
Товарищи дорогие коллеги, может ли кто осилить мировую проблему работы алгоритма Blowfish на юникодных строках? Проблема в том что ни один алгоритм Blowfish для строк, который я пробовал, не работает на японской или китайской локали, при попытке хотябы с английскими буквами поиграть. И мало того, русская текстовая строка закодированная будучи на русской винде, на английской же фиг раскодируется обратно!
Вот примерчик
Если у кого мозга хватить осилить сию упорную проблему, буду безмерно рад.
А я опускаю руки, моего уровня для ее решения не хватает к сожалению. Или это такой алгоритм бестолковый и никчемный?
Автор: LostWarrior
Дата сообщения: 19.12.2008 15:42
Ребята, помогите пожалуйста
Есть Вэб-сервис, написаный на Java, но это не принципиально

Пытаюсь сделать клиент на VB.NET (VS8)
Сгенерировал прокси классы средствами VS, все ок

Но возникла проблема - не могу передать удаленному методу в качестве параметра объект
Если параметры - строка, число то все супер, а экземпляр сложного класса не передает

При этом в качестве результата принимает любые объекты
Пробовал сервис и в режиме RPC, и DOCUMENT - без изменений

Вот пример вызова:

Код:
Dim cs As New ContractServiceService

Dim bService(0) As billRequestService
Dim bServiceItem As New billRequestService
With bServiceItem
'.dateFrom=
'.dateTo=
.tariffId = 57647452
'.sum = 99
End With
bService.SetValue(bServiceItem, 0)

Dim bSubService(0) As billRequestSubservice
With bSubService(0)
'.dateFrom
'.dateTo
'.subserviceId = 111
'.sum
'.count
End With

Dim bOrder As New billRequest
With bOrder
.contractId = 34328918 '185888
.serviceId = 24850210 'Интернет
.dateFrom = CType("01/01/2009", Date)
.dateTo = CType("31/01/2009", Date)
' .messageId=
.services = bService
' .subservices=
' .actionId=
' .allowCredit=
.userId = 1 'admin
End With

Try
bOrder = cs.getBill(bOrder)
cs.Dispose()

LogBox.Text = "---getBill---" & vbNewLine
LogBox.Text += "billId=" & bOrder.billId.ToString & vbNewLine
LogBox.Text += "billDate=" & bOrder.billDate.ToString & vbNewLine
LogBox.Text += "filename=" & bOrder.filename.ToString & vbNewLine
LogBox.Text += "serviceName=" & bOrder.serviceName.ToString & vbNewLine
LogBox.Text += "typeName=" & bOrder.typeName.ToString & vbNewLine
LogBox.Text += "~~~~~~~~~~~~~~~~~" & vbNewLine
LogBox.Text += "fileData=" & bOrder.fileData.ToString & vbNewLine
LogBox.Text += "---------------------" & vbNewLine

Catch ex As Exception
cs.Dispose()
LogBox.Text = "---ERROR:getBill---" & vbNewLine
LogBox.Text += "Message=" & ex.Message.ToString & vbNewLine
LogBox.Text += "~~~~~~~~~~~~~~~~~" & vbNewLine
LogBox.Text += "Full Log=" & ex.ToString & vbNewLine
LogBox.Text += "---------------------" & vbNewLine
End Try

Автор: Stitchi16
Дата сообщения: 20.12.2008 15:45
Mont1 спасибо, но что то не вышло 8(. Если не трудно помогите. Программа находится:
http://ifolder.ru/9655232
Автор: SteRvo4ka777
Дата сообщения: 22.12.2008 04:08
люди.... помогите.. оч срочно надо.... а я в этом полный чайник....
Создайте программу на языке Visual Basic нахождения площади квадрата с использованием функций InputBox и MsgBox. Нарисовать блок-схему....
Автор: ItsJustMe
Дата сообщения: 23.12.2008 15:05
Открою тайну: если у квадрата одна сторона имеет длину A единиц, то и каждая из остальных трех сторон имеет длину A единиц. А площадь квадрата есть A*A, т.е. S = A*A, где S - искомая площадь в единица^2.
Что касается функций InputBox и MsgBox, то MSDN тебе в помощь. Или help из MS Office'а.
Если help'а нет, то вот:
Public Shared Function InputBox ( _
    Prompt As String, _
    Title As String, _
    DefaultResponse As String, _
    XPos As Integer, _
    YPos As Integer _
) As String
Public Shared Function MsgBox ( _
    Prompt As Object, _
    Buttons As MsgBoxStyle, _
    Title As Object _
) As MsgBoxResult
Но лучше все таки найди help. Он принесет тебе куда больше пользы, чем форум. Ибо помощь от форума - от случая к случаю, а от help'а - постоянная.
Удачи.
Автор: SteRvo4ka777
Дата сообщения: 23.12.2008 23:13
ItsJustMe
Огромное спасибочки.. ну я теперь хоть знаю от чего мне отталкиваться... ) еще раз огромное при огромное спасибки...
Автор: Tobias
Дата сообщения: 25.12.2008 18:28
Помогите, пожалуйста, описать хаотичное движение в VB элемента Image, помещенного в PictureBox. Некоторую часть я уже сделал, но картинка отталкивается от правой границы PictureBox и идет вниз, затем выходит за нижний предел и исчезает, потом (скорее всего отталкивается от нижней границы, просто этого не видно - т.к. картинка вне границ) продолжает движение...

В общем вот код, я уже не знаю, что еще попробовать, никак не получается...

Option Explicit

Dim dx As Integer
Dim dy As Integer

Private Sub CommandButton1_Click()
T.Enabled = True
End Sub

Private Sub CommandButton2_Click()
T.Enabled = False
End Sub

Private Sub Form_Load()
dy = 100
dx = 100
End Sub

Private Sub T_Timer()
ImgBall.Move ImgBall.Left + dx, ImgBall.Top - dy
If ImgBall.Top <= 0 Then dy = -dy
If ImgBall.Left <= 0 Or ImgBall.Left >= PictureBox.Width - ImgBall.Width Then dx = -dx
If ImgBall.Top <= 0 Or ImgBall.Top >= PictureBox.Width - ImgBall.Width Then dy = -dx
???????
End Sub


Автор: Mont1
Дата сообщения: 26.12.2008 03:43
Tobias
Попробуй
Private Sub T_Timer()
ImgBall.Move ImgBall.Left + dx, ImgBall.Top - dy
If ImgBall.Left <= 0 Or ImgBall.Left >= PictureBox.Width - ImgBall.Left - ImgBall.Width Then dx = -dx
If ImgBall.Top <= 0 Or ImgBall.Top >= PictureBox.Height - ImgBall.Top - ImgBall.Height Then dy = -dy
End sub
Автор: Tobias
Дата сообщения: 26.12.2008 10:23
Спасибо, я попробовал - не получилось (совсем не отталкивается)
Попробовал вот так - уже лучше. но картинка, когда движется влево, отталкивается от нижней границы, а вправо - нет. И еще она уходит вниз, затем снова появлется и продолжает двигаться по этой траектории. Не пойму почему???

Option Explicit
Dim dx As Integer
Dim dy As Integer
Private Sub CommandButton1_Click()
T.Enabled = True
End Sub
Private Sub CommandButton2_Click()
T.Enabled = False
End Sub
Private Sub Form_Load()
dy = 100
dx = 100
End Sub
Private Sub T_Timer()
ImgBall.Move ImgBall.Left + dx, ImgBall.Top - dy
If ImgBall.Top <= 0 Then dy = -dy
If ImgBall.Left <= 0 Or ImgBall.Left >= PictureBox.Width - ImgBall.Width Then dx = -dx
If ImgBall.Left <= 0 Or ImgBall.Top >= PictureBox.Height - ImgBall.Height Then dy = -dx
If ImgBall.Left <= 0 Or ImgBall.Top >= PictureBox.Width - ImgBall.Width Then dy = -dy
End Sub
Автор: Mont1
Дата сообщения: 29.12.2008 02:25
Tobias
Попробуй
If ImgBall.Left <= 0 Or PictureBox.Width - ImgBall.Left - ImgBall.Width <= 0 Then dx = -dx
If ImgBall.Top <= 0 Or PictureBox.Height - ImgBall.Top - ImgBall.Height <= 0 Then dy = -dy

Еще возьми значения dx и dy поменьше, где-то 10, твое значение 100 большое, поэтому ImgBall улетает за пределы границ.
Должно работать
Автор: Tobias
Дата сообщения: 29.12.2008 14:14
Спасибо Но что-то не то... Вот так точно работает
Option Explicit
Dim speed As Integer
Dim dTop, dLeft As Integer

Private Sub CommandButton1_Click()
T.Enabled = True
End Sub
Private Sub CommandButton2_Click()
T.Enabled = False
End Sub
Private Sub Form_Load()
speed = 100
dTop = speed
dLeft = speed
End Sub
Private Sub T_Timer()
ImgBall.Move ImgBall.Left + dLeft, ImgBall.Top - dTop
If ImgBall.Top <= 0 Then dTop = -speed
If ImgBall.Left <= 0 Then dLeft = speed
If ImgBall.Top + ImgBall.Height >= PictureBox.Height Then dTop = speed
If ImgBall.Left + ImgBall.Width >= PictureBox.Width Then dLeft = -speed
End Sub
Автор: tau34
Дата сообщения: 06.01.2009 05:01
Как создать кнопку для загрузки фото на сайт, добавления объявлений, добавления новостей как посетителю так и админу? Если можете подскажите
http://tau34.narod.ru
Автор: weel
Дата сообщения: 08.01.2009 01:28
Ребята, нужна помощь, я уже пол года по нету лажу ниче не могу найти!
Проблема с взаимодействием VB и JS.Пишу прогу, которая работает с HTML страницей, и в основном там JS. Проблема такова: получаю м помощью MSHTML.dll по Id текстовое поле, изменяю его .value ,причем оно меняется, получаю по Id кнопку Сохранить нажимаю ее, НО-при перегрузке страницы значение не меняется!!!!Если же сделать фокус и отправить сообщение окну Ctrl+V то поле изменяется и значение остается.Мне надо чтоб прога работала в фоновом режиме,нет возмозности оставлять активным окно чтоб отправить в него Ctrl+V.Как можно поменять value чтоб оно сохранилось?

часть кода:
Dim Y As HTMLDocument
Dim rc As HTMLTextAreaElement
Set Y = web.Document
For Each rc In Y.All
If rc.Id = "ms32" Then
rc.Value="Something"
end if
Next

с ней не выходит,


а вот:

For Each rc In Y.All

If rc.Id = "ms32" Then 'поле статус аларма
Clipboard.Clear
Clipboard.SetText "Something", vbCFText
rc.setActive
rc.focus
keybd_event VK_CONTROL, 0, 0, 0 ' press ctrl
keybd_event VK_V, 0, 0, 0 ' press v
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0 ' release ctrl
keybd_event VK_V, 0, KEYEVENTF_KEYUP, 0 ' release v
End If

тоже изменяет значение и сохраняет




Добавлено:
Или хоть подскажите где искать, по DHTML литературы очень мало,а задача очень специфическая(((((
VB знаю нормально, а вот с JS незнаю((((
Автор: xLIBERATORx
Дата сообщения: 11.01.2009 19:27
Уважаемые товарищи программисты, не могли бы вы мне решить 2 (наверняка не оч сложные для вас) задачи, был бы примногоблагодарен! (сам я в этом деле не в зуб ногой)

1) Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, в том порядке, в котором они встречаются в тексте.

2)Определить наименьший элемент каждой четной строки матрицы A[М, N].

Надеюсь на вас!
Автор: Shura787689
Дата сообщения: 22.01.2009 07:35
Написал программу в "Visual Studio 2008" на "Visual Basic" которая работает с базой данных "MS Acсess" и после компиляции она не работает на любых других компах кроме того на котором компилировал. Если пишу прогу без базы данных то она запускается и на других компьютерах без проблем. Я так понимаю что это известные грабли но опыта нехватает разобраться самому.
Автор: dneprcomp
Дата сообщения: 22.01.2009 23:40
Shura787689
Какая ошибка? В чем выражается "не работает"?
База поставляется с программой? Путь тот же?
Что значит "пишу прогу без базы данных"?
Автор: Shura787689
Дата сообщения: 23.01.2009 06:08
Ошибки конкретной нет... на одном компе просто вобще ничего не происходит, на других просто хочет отостослать отчет об ошибке (дамп ошибки думаю будет лишним выкладывать). Базу данных я добавляю в проект, и на том компьютере где я все делаю после компиляции могу перенести в любой каталог и она всеравно работает без проблем. Сама база данных у меня в виде одного файла Access в каталоге с программой. А "без базы данных" я имел ввиду что любая другая прога написанная мной неиспользующая обращение к базе данных рабоет отлично. Есть подозрение что нужно както включать в сборку дополнительные библиотеки... но я в этом совершенно не разбираюсь и поэтому прошу помочь разобраться.
Автор: dneprcomp
Дата сообщения: 23.01.2009 07:54
Shura787689
Т.к. ошибки нет, возьми и поставь в ключевых местах программы msgbox-ы. На лоад, активейт, на обращение к базе и т.д. Посмотри до какого дойдет.
Автор: Shura787689
Дата сообщения: 23.01.2009 09:07
Есть подозрение что неработало все из за того что небыл установелен NET.FrameWork 3.5 на тестируемых машинах... (стоял только 3.0) вечером попробую и отпишусь...
Автор: VVSitnikov
Дата сообщения: 17.02.2009 07:57
Доброго времени суток, уважаемые!
Возникла проблема написания текста на форме в VB2005. В VB 6.0 никаких проблем нет, а в 2005-м пишет какую-то хрень. Пробовал сделать прогу в 6.0, а потом ее открыть в 2005-м. Результат примерно тот же. По-русски: данные команды не поддерживаются. Что-нибудь предложите?
Автор: Yulcha
Дата сообщения: 18.02.2009 18:26
напишите мне пожалуйста программуизвестны координаты вершин прямоугольника.написать программу которая определяет находится ли точка А с указанными координатами внутри или вне прямоугольника
Автор: Akvilon1
Дата сообщения: 21.02.2009 00:28

Цитата:
напишите мне пожалуйста программуизвестны координаты вершин прямоугольника.написать программу которая определяет находится ли точка А с указанными координатами внутри или вне прямоугольника


'Точка A (X1, Y1) - координаты нижнего левого угла прямоугольника
Dim X1 As Integer
Dim Y1 As Integer

'Точка B (X2, Y2) - координаты правого верхнего угла прямоугольника
Dim X2 As Integer
Dim Y2 As Integer

'Точка С (X, Y) - заданная точка принадлежность которой нужно проверить
Dim X As Integer
Dim Y As Integer
''''''''''''''''''''''''
''''''''''''''''''''''''
''''''''''''''''''''''''
'Зададим координаты
X1 = 1
Y1 = 0

X2 = 5
Y2 = 3

X = 2
Y = 1


''''''''''''''''''''''''
''''''''''''''''''''''''
If X >= X1 And X <= X2 Then
If Y >= Y1 And Y <= Y2 Then
MsgBox "Точка принадлежит прямоугольнику", vbOKOnly
Exit Sub
End If
End If

MsgBox "Точка не принадлежит прямоугольнику", vbOKOnly


Добавлено:

Цитата:
Уважаемые товарищи программисты, не могли бы вы мне решить 2 (наверняка не оч сложные для вас) задачи, был бы примногоблагодарен! (сам я в этом деле не в зуб ногой)

1) Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, в том порядке, в котором они встречаются в тексте.

2)Определить наименьший элемент каждой четной строки матрицы A[М, N].

Надеюсь на вас!


Задача еще актуальна?
Автор: korol26
Дата сообщения: 23.02.2009 11:08
Оч нужна помощь, чет не могу никак придумать, короче, программа должна быть на VB (2008)
есть форма и некая картинка в picturebox , кнопка и компонент Timer
по нажатия кнопки таймер запускается
picturebox должен увеличиваться до размеров формы, потом сразу уменьшаться ..
и так , собсна, бесконечно, пока не нажмём на кнопку стоп)
не могу додуматься, как в таймере вписать, чтоб он уменьшался до конца, т.к.
После увеличения, он уменьшается на один шаг, идёт проверка, и , естественно, picturebox уже меньше формы и опять начинает увеличиваться,
пробовал с метками, но чет не получилось пока
вот что есть на данный момент в обработчике события Timer1_Tick

Код: Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim xSize As Integer
Dim ySize As Integer

xSize = PictureBox1.Size.Height + 10
ySize = PictureBox1.Size.Width + 10
PictureBox1.Size = New Size(xSize, ySize)

If xSize > Me.Size.Height And ySize > Me.Size.Width Then

xSize = PictureBox1.Size.Height - 10
ySize = PictureBox1.Size.Width - 10
PictureBox1.Size = New Size(xSize, ySize)


End If

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940

Предыдущая тема: для Hiper-six (индексы .nsx .smt) хоть что нибудь Опции


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.