Рассылка закрыта
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Программирование (VB,C#,ASP,.NET): новости, советы, примеры
Выпуск # 656Приветствую вас, любители высоких технологий! Вот и очередной выпуск рассылки. За неделю на сайте появилось много новых и интересных материалов, некоторые из которых вы сможете увидеть в этом выпуске. Содержание выпускаЧитайте в этом выпуске: Если у вас есть вопросы по программированию или работе с компьютером, не стесняйтесь, спрашивайте.Форумы Kbyte.RuНа форумах Kbyte.Ru постоянно появляются новые интересные темы и обсуждения. В этом выпуске представлены лишь новые темы, с момента прошлой рассылки. Кстати, любой желающий может на форумах Kbyte.Ru совершенно свободно получить помощь грамотных специалистов в области программирования, да и в целом информационных технологий. Задать свой вопрос прямо сейчас Помогите срочно решить задачу в visual basic 6.0!!!!!! @stebsanya 14.09.2011 18:38 Y=x^2-5x+6 Работа с XML @saranin 14.09.2011 11:20 Всем привет. Вопрос такой: Существует некий XML файл следующего вида. <?xml version="1.0" encoding="utf-8"?> <Users> <userItem ID="1"> <LastName>Иванов</LastName> <FirstName>Петр</FirstName> <SecondName>Иванович</SecondName> <Position>Менеджер</Position> </userItem> <userItem ID="2"> <LastName>Петров</LastName> <FirstName>Иван</FirstName> <SecondName>Иванович</SecondName> <Position>Программист</Position> </userItem> </Users> Задача наибыстрейшим способом узнать последний ID у элемента userItem. Сейчас делаю перебором в цикле Public Shared Function GetLastIDinXML() As Integer Dim fileInfo = FileIO.FileSystem.GetFileInfo(pathToXML & NameOfXML) Try Dim xtr As New Xml.XmlTextReader(fileInfo.OpenRead) Dim ID = 0 While xtr.Read If xtr.NodeType = Xml.XmlNodeType.Element Then If xtr.Name = "userItem" Then ID = xtr.GetAttribute("ID") End If End If End While xtr.Close() Return ID Catch ex As Exception Return 1 End Try End Function Заранее спасибо! Ответ #1 @Aleksey Nemiro 14.09.2011 12:21 Для этого можно использовать XPath (XML Path Language) - отдельный язык, созданный специально для обработки XML. Dim myXml As New System.Xml.XPath.XPathDocument("XMLFile1.xml") 'XMLFile1.xml - файл с xml-данными, который находится в одной папке с программой Dim myNavigator As System.Xml.XPath.XPathNavigator = myXml.CreateNavigator() 'id Dim lastMemberId As Integer = 0 lastMemberId = CType(myNavigator.Select("/Users/userItem[not(@ID <= preceding-sibling::userItem/@ID) and not(@ID <= following-sibling::userItem/@ID)]/@ID")(0), System.Xml.XPath.XPathNavigator).ValueAsInt() 'весь элемент Dim lastMember As System.Xml.XPath.XPathNavigator lastMember = myNavigator.Select("/Users/userItem[not(@ID <= preceding-sibling::userItem/@ID) and not(@ID <= following-sibling::userItem/@ID)]")(0) Ответ #2 @saranin 14.09.2011 14:05 Афигеть!!! Что означает это условие: [not(@ID <= preceding-sibling::userItem/@ID) and not(@ID <= following-sibling::userItem/@ID)] Ответ #3 @Aleksey Nemiro 14.09.2011 14:20 Если текущий ID больше предыдущего (и не равен ему) И текущий ID больше следующего (и не равен ему) preceding-sibling:: - элементы той же ветке, но выше текущей following-sibling:: - элементы той же ветке, но ниже текущей <userItem ID="1"> <LastName>Иванов</LastName> <FirstName>Петр</FirstName> <SecondName>Иванович</SecondName> <Position>Менеджер</Position> </userItem> <userItem ID="2"> <LastName>Петров</LastName> <FirstName>Иван</FirstName> <SecondName>Иванович</SecondName> <Position>Программист</Position> </userItem> <userItem ID="3"> <LastName>Федоров</LastName> <FirstName>Альберт</FirstName> <SecondName>Петрович</SecondName> <Position>Разработчик</Position> </userItem> <userItem ID="1"> preceding-sibling - нету элемента выше ID=1, т.е. там как бы ноль following-sibling - ниже идет ID = 2 <userItem ID="2"> preceding-sibling - выше ID = 1 following-sibling - ниже идет ID = 3 <userItem ID="3"> preceding-sibling - выше ID = 2 following-sibling - ниже элемента нету, т.е. там как бы ноль Если 1 > 0 и 1 > 2, то 1 - ложь Если 2 > 1 и 2 > 3, то 2 - ложь Если 3 > 1 и 3 > 0, то 3 - истина Комментарий к переменной в тексте программы @Сергей 14.09.2011 10:22 Доброго времени суток всем Есть вопрос: как добавить комментарий к переменной в тексте программы? например: <remark></remark> Public TargetSector As WeakReference чтобы этот комментарий выскакивал в ToolTip-е при наведении на эту переменную мышью? Ответ #1 @Aleksey Nemiro 14.09.2011 11:27 Visual Studio шаблон для xml-комментариев
проставляет автоматически, для этого достаточно сразу перед объявлением переменной, свойства, функции или метода набрать (с клавиатуры) три подряд идущих символа комментария ('''). Текст комментария, который отображается в ToolTip-ах должен располагаться в xml-элементе summary. ''' Public Var As String ''' <summary> ''' Эта обычная переменная, которая ничего не делает, как и многие другие :) ''' </summary> Public Var As String Пояснения к именам параметров функций и методов располагаются в xml-элементах param: ''' <summary> ''' Эта функция находится здесь просто так, для красоты ''' </summary> ''' <param name="param1">Какой-то параметр</param> ''' <param name="param2">Еще один параметр, зачем он тут нужен, непонятно</param> Public Function MyFunction(ByVal param1 As String, ByVal param2 As Boolean) As String Return "Привет мир!" End Function Остальная информация из xml-комментариев отображается только в обозревателе объектов (Ctrl + Alt + J). Ответ #2 @Сергей 14.09.2011 11:43 Алексей, спасибо, но.. данный способ применим только к процедурам и прочим функциям (я так и расставлял комментарии к свойствам) а к переменной - не работает (данный комментарий виден при наборе имени переменной, но не при наведении на неё мыши) Ответ #3 @Aleksey Nemiro 14.09.2011 11:51 Да, тултипы с xml-комментариями у переменных действительно не отображаются, но в IntelliSense выводятся. ps: для локальных переменных (в рамках функций, методов) xml-комментарии использовать нельзя, да и в большинстве своем оно и не к чему. Ответ #4 @Сергей 14.09.2011 11:54 Та переменная - уровня модуля (видна отовсюду) вот я и не хочу всё время вспоминать, с какой именно целью она была объявлена. Связь TextBox и RadioButton @semashkinans 13.09.2011 18:15 На форме ТextBox и RadioButton. Как написать программу, чтобы при только нажатии RadioButton можно было вписать текст в ТextBox? Помогите начинающему лузеру Ответ #1 @Aleksey Nemiro 13.09.2011 18:54 Блокировать TextBox можно установив свойство Enabled в положение False. За признак выбранности у RadioButton отвечается свойство Checked. Соответственно, в событие изменения состояния RadioButton, или нажатия, код может быть таким: ТextBox.Enabled = RadioButton1.Checked Ответ #2 @semashkinans
13.09.2011 19:03 Спасибо Работа с датами
@kvb 10.09.2011 17:42 ПОДСКАЖИТЕ КАК В VB2005 ПОЛУЧИТЬ ДАТУ +7 ДНЕЙ ОТ СЕГОДНЯ -- Тема изменена администратором. PS: о ЗАГЛАВНЫХ БУКВАХ есть пунктик в правилах форума. Ответ
#1 @Aleksey Nemiro 10.09.2011 17:59 Ответ #2 @kvb 11.09.2011
12:43 А теперь еще более глупый вопрос- как сделать так, чтобы из текствокса занести данные в ячейку DataGridView, причем в ячейку выбраную кликом Ответ #3 @Aleksey Nemiro 13.09.2011 18:55 Склеить несколько изображений @[i]Pro 09.09.2011 09:22 В общем проблема такая, есть 3 файла изображений, необходимо их склеить в 1 изображение :) С графикой и изображениями ни разу в жизни не работал, поэтому вот такие вот затруднения :\ Ответ #1 @Aleksey Nemiro 09.09.2011 13:33 Для этого нужно сделать объект типа System.Drawing.Graphics для изображения и нарисовать в нем нужные картинки в нужном месте методом DrawImage. Примерно так: 'картинки, которые нужно объеденить Dim img1 As System.Drawing.Image = System.Drawing.Image.FromFile("1.jpg") Dim img2 As System.Drawing.Image = System.Drawing.Image.FromFile("2.jpg") Dim img3 As System.Drawing.Image = System.Drawing.Image.FromFile("3.jpg") 'Dim g As System.Drawing.Graphics = PictureBox1.CreateGraphics() Dim bmp As New System.Drawing.Bitmap(500, 500) 'холст размером 500 на 500 пикселей Dim g As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(bmp) 'рисуем g.DrawImage(img1, 0, 0, 100, 100)'x, y, w, h g.DrawImage(img2, 100, 100, 50, 50) g.DrawImage(img2, 150, 150, 200, 200) 'в последующем bmp можно сохранить или передать куда-нибудь Ответ #2 @[i]Pro 10.09.2011 14:39 Dim pic1, pic2, pic3 As New PictureBox pic1.ImageLocation = image1 pic2.ImageLocation = image2 pic3.ImageLocation = image3 Dim bmp As New Bitmap(500, 500) Dim g As Graphics = Graphics.FromImage(bmp) g.DrawImage(pic1.Image, 0, 0, pic1.Image.Width, pic1.Image.Height) g.DrawImage(pic2.Image, pic1.Image.Width, 0, pic2.Image.Width, pic2.Image.Height) g.DrawImage(pic3.Image, 0, pic1.Image.Height, pic3.Image.Width, pic3.Image.Height) g.Dispose() main.PictureBox1.Image = bmp Заменил битмапы пикчербоксами, почему то выдает исключение в строке: g.DrawImage(pic1.Image, 0, 0, pic1.Image.Width, pic1.Image.Height) В экземпляре объекта не задана ссылка на объект. Ладно, подставляю к Dim g As New Graphics = Graphics.FromImage(bmp) В ответ куча экспешенов: End of statement expected. Негодую в чем вообще дело, думаю навряд ли из-за PictureBox :\ Использую его для загрузки изображений из интернета, знаю что говно код, зато удобно) Ответ #3 @Aleksey Nemiro 10.09.2011 18:53 Заменил битмапы пикчербоксами, почему то выдает исключение в строке:Наверное в PictureBox нету Image, поэтому и возникает исключение. End of statement expected.это вроде как означает, что где-то что-то не закрыто, скобка, условие, функция или еще что. Ответ #4 @[i]Pro 10.09.2011 19:15
Ага, так и есть, изображения начинали склеиваться до того как загружались из инета, поэтому PictureBox для меня не вариант, придется StreamReader наверное использовать) Спасибо за помощь :) Статьи по программированиюРазработка прокси-сервера на C#Сетевое взаимодействие: C# @Алексей Немиро 12.09.2011 18:16 Прокси-сервера позволяют организовывать передачу данных между клиентами, другими серверами и сетевыми службами. Прокси-сервера можно использовать для распределения доступа в Интернет в локальных сетях, для учета и обработки трафика, для отладки сетевых приложений, да и много еще для чего. В этой статье пойдет речь о создании собственного HTTP прокси-сервера при помощи языка программирования C#, с использованием сокетов.Все статьи по программированию Вакансии в ITПРОГРАММИСТРоссия, Москва | Работа в офисе | 30 000.00 RUB Разработчик SharePointРоссия, Москва | Работа в офисе | 90 000.00 RUB Ведущий JAVA разработчикРоссия, Москва
| Работа в офисе | 160 000.00 RUB Ведущий Flash программистРоссия, Москва | Работа в офисе | 120 000.00 RUB ПрограммистРоссия, Москва | Работа в офисе | 30 000.00 RUB Программист . NET (C#)Россия, Москва | Работа в офисе | 60 000.00 RUB Ведущий разработчик . NET (C#)Россия, Москва | Работа в офисе | 80 000.00 RUB Программист / Разработчик ПОРоссия, Москва | Работа в офисе | 85 000.00 RUB Инженер-программистРоссия, Москва | Работа в офисе | 60 000.00 RUB Программист-электронщикРоссия, Москва | Работа в офисе | 40 000.00 RUB Все вакансии в IT · Новости мира ITIntel и McAfee работают над низкоуровневой системой ИТ-защиты DeepSafeСпустя примерно семь месяцев после покупки корпорацией Intel антивирусного разработчика McAfee две компании готовятся представить первые плоды их совместной работы на ниве обеспечения ИТ-безопасности. В рамках открывшегося сегодня в Сан-Франциско форума Intel Developer Forum McAfee презентует первую совместную с Intel разработку, которая обеспечивает защиту компьютера от ИТ-угроз, работая за пределами операционной системы.
Новая система, получившая название DeepSafe, использует низкоуровневые разработки Intel и программное решение McAfee Endpoint Protection, чтобы "наилучшим образом исследовать вредоносное программное обеспечение". Кендес Уорли, старший вице-президент и генеральный менеджер McAfee Endpoint Security, говорит, что DeepSafe представляет собой новый на рынке антивирусных решений продукт. По ее словам, он использует уровень технологий, ранее не доступный антивирусным продуктам. 14.09.2011 11:16 · Категория: Безопасность · Источник: CyberSecurity.ru Sony анонсировала плеер Walkman Z на базе ОС AndroidSony сегодня официально представила подробности о первом Android-плеере Walkman, продажи которого стартуют с 10 декабря этого года в Японии. Новинка будет поставляться в емкости 16, 32 и 64 гигабайта.
Согласно описанию компании, плееры Sony Walkman Z будут поставляться с гигагерцевыми двухъядерными процессорами Nvidia Tegra 2, 512 мегабайтами ОЗУ и операционной системой Android 2.3. Однако одним из главных моментов этого плеера станет крупный 4,3-дюймовый сенсорный ЖК-экран с разрешением 480x800 пикселей. Продаваться устройство будет в трех цветовых конфигурациях - черном, красном и фиолетовом. 14.09.2011 11:16 · Категория: Железо · Источник: CyberSecurity.ru Регистрация в белых каталогах с 10% скидкойПользователи Kbyte.Ru теперь имеют возможность регистрировать свои сайты в белых каталогах через сервис нашего партнера 1PS.RU с 10% скидкой! Добавление сайта в каталоги позволит повысить его позиции в поисковых системах и увеличить посещаемость.
Если вы уже давно имеете учетную запись на нашем сайте, то вы можете ознакомиться с условиями акции и получить промо-код на следующей странице:
Если вы еще не зарегистрированы на Kbyte.Ru, то зарегистрируйтесь, это несложно и абсолютно бесплатно.
Или вы можете пройти специальный SEO-тест, где в качестве подарку вам будет предоставлена скидка. Тест расположен по адресу: http://kbyte.ru/ru/Tests/Show.aspx?id=16
Если у вас возникнут какие-либо вопросы или предложения, пишите нам. 13.09.2011 19:29 · Категория: Новости Kbyte.Ru · Источник: Kbyte.Ru
Подпишитесь на тематические RSS-ленты Kbyte.Ru, чтобы быть в курсе последних новостей: Основная лента · Форумы (темы и сообщения) · Visual Basic 5.0/6.0 · Visual Basic .NET · C# (Си шарп) · Delphi · JavaScript · ActionScript · ASP .NET · ASP .NET MVC Ищите Kbyte.Ru в социальных сетях FaceBook, ВКонтакте, Twitter. Если вы занимаетесь программированием, то наверняка вам пригодятся хитрые инструменты. Международный портал для программистов и разработчиков Kbyte.Ru основан в 2006 году. Целью портала является объединение программистов и специалистов IT-бизнеса, студентов и преподавателей для обмена опытом и знаниями, оказания помощи во всех делах и начинаниях в области IT. |
В избранное | ||