Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2011, 12:40   #1
kg_c#
 
Регистрация: 07.07.2011
Сообщений: 5
По умолчанию Связывание картинку с данными

Картинку из jpeg перегнала bmp.
private void Form1_Load(object sender, EventArgs e)
{
pictureBox1.Image = Image.FromFile("C:\\Documents and Settings\\презентация\\bmp_kr.bmp") ;

}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//определят код цвета, например: fff5f57a, ff9eaad7 и т. д.

private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
Color foncolor = (pictureBox1.Image as Bitmap).GetPixel(e.X, e.Y);
textBox1.Text = foncolor.Name.ToString();


/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

вытаскивает информацию из rtf файла с помощью richTextBox1

private void Form2_Load(object sender, EventArgs e)
{
richTextBox1.LoadFile(@"C:\Document s and Settingsл\презентация\text\Нарынска я.rtf");

}

ВОПРОС: как связать информацию т.е. richTextBox1.LoadFile(@"C:\Document s and Settingsл\презентация\text\Нарынска я.rtf") с кодами цветов fff5f57a, ff9eaad7.
kg_c# вне форума Ответить с цитированием
Старый 25.07.2011, 12:57   #2
Mixim
Форумчанин
 
Регистрация: 29.10.2009
Сообщений: 259
По умолчанию

Цитата:
Сообщение от kg_c# Посмотреть сообщение
ВОПРОС: как связать информацию т.е. richTextBox1.LoadFile(@"C:\Document s and Settingsл\презентация\text\Нарынска я.rtf") с кодами цветов fff5f57a, ff9eaad7.
В каком смысле "как связать...", т.е. выбрал пользователь цвет с кодом fffffff, а программа должна ему сказать:"Это цвет является белым"(условно)? Если правильно понимаю смысл кода, то программа служит для "указания пользователю наименования цвета выбранного пиксела, которое содержится в rtf-файле"?
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.

Последний раз редактировалось Mixim; 25.07.2011 в 12:59.
Mixim вне форума Ответить с цитированием
Старый 25.07.2011, 13:41   #3
kg_c#
 
Регистрация: 07.07.2011
Сообщений: 5
По умолчанию

У нас есть карта республики с областьями и районами. Картинка в формате bmp. Каждая область закрашена разными цветами и при нажатии на эти цветы должно выходить информация об этой области т.е. RTF файл (площадь, кол. населения и т.д.). Если области выходит на Form1 с помощью pictureBox1, то информация об областях должна выходить на Form2 с помощью richTextBox1.
kg_c# вне форума Ответить с цитированием
Старый 26.07.2011, 11:46   #4
Mixim
Форумчанин
 
Регистрация: 29.10.2009
Сообщений: 259
По умолчанию

Цитата:
Сообщение от kg_c# Посмотреть сообщение
У нас есть карта республики с областьями и районами. Картинка в формате bmp. Каждая область закрашена разными цветами и при нажатии на эти цветы должно выходить информация об этой области т.е. RTF файл (площадь, кол. населения и т.д.). Если области выходит на Form1 с помощью pictureBox1, то информация об областях должна выходить на Form2 с помощью richTextBox1.
Вот так и надо задавать вопрос, а не "мифическими" словами и выражениями.
Если ничего не путаю, то в C# есть специальный компонент, который позволяет работать с Word-файлами(файлами MS Office). Эту информацию читал довольно давно и на практике никогда не проверял, но можно ведь открыть элементарный MSDN и почерпнуть информацию об описанном объекте от туда.
Также вот тут человеку объясняют как загрузить rtf-файл в richTextBox. Смотри, надеюсь поможет
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.
Mixim вне форума Ответить с цитированием
Старый 27.07.2011, 12:42   #5
kg_c#
 
Регистрация: 07.07.2011
Сообщений: 5
По умолчанию

Спасибо за помощь!!! Но при загрузке данных в richTextBox1 возникли проблемы, когда просто вызываю Form2 отдельно иформация выходит, а когда вызваю через первую Form1, richTextBox1 выходит пустой, на первой форме открыла public.

Код:
public fr_kr()
        {
            InitializeComponent();
            this.Prezentazia1 = new Prezentazia.fr_info_obl();

/////////////////////////////////////////////////////////////////////////////////////////////////////

private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
        {
Color foncolor = (pictureBox1.Image as Bitmap).GetPixel(e.X, e.Y);                    textBox1.Text = foncolor.Name.ToString();
            if (textBox1.Text == "fff5f57a")
            {
               fr_info_obl obl = new fr_info_obl();
               obl.ShowDialog(); 
   
Prezentazia1.richTextBox1_obl.LoadFile(@"C:\Documents and Settings\презентация\text\Нарынская.rtf");
Prezentazia1.richTextBox1_obl.Text = Convert.ToString(textBox1.Text);
               
            }

            if (textBox1.Text == "fff5ca7a")

            {
                fr_info_obl obl = new fr_info_obl();
                obl.ShowDialog();
Prezentazia1.richTextBox1_obl.LoadFile(@"C:\Documents and Settings\презентация\text\Баткенская.rtf");
      Prezentazia1.richTextBox1_obl.Text = Convert.ToString(textBox1.Text);
            }
        }
kg_c# вне форума Ответить с цитированием
Старый 29.07.2011, 07:03   #6
Mixim
Форумчанин
 
Регистрация: 29.10.2009
Сообщений: 259
Восклицание

Цитата:
Сообщение от kg_c# Посмотреть сообщение
Спасибо за помощь!!! Но при загрузке данных в richTextBox1 возникли проблемы, когда просто вызываю Form2 отдельно иформация выходит, а когда вызваю через первую Form1, richTextBox1 выходит пустой, на первой форме открыла public.
В данном случае совет может быть один: попробуй запустить свою программу пошагово в двух случаях - когда все отлично работает и загружается(когда "просто вызываешь Form2 отдельно"), а затем когда вызываешь Form2 через Form1. Просмотри пошагово с помощью клавиши "F7"(если ничего не путаю) в какие методы заходит, что осуществляет и рекомендую поставить точку остановки(breakpoint) в файле, стандартное наименование которого "Program.cs"(там примерно 10 строк кода, он создается автоматически и как правило туда мало кто лазит) и все "медленно и нудно" посмотреть!
Однако, глядя на представленный код, возникает такое впечатление, что загрузка данных в richTextBox1 происходит при инициализации формы Form2. Данное событие(инициализация) происходит всего один раз, могу наврать, но по-моему после того, как форма создалась. Так вот, может быть ты запустил проект в котором открылась Form2, на которую все отобразилось, затем открыл Form1, закрыл Form2, за которую отвечает некоторая переменная, а затем снова с использованием той же самой переменной открыл Form2? - Инициализация уже была проведена, соответственно в этот метод "программа больше не зайдет" и ничего не отобразит в richTextBox1. Я, как правило, в таких случаях делаю примерно следующее:
1)размещаю на форме некоторую временную кнопку button1;
2)создаю метод на событие нажатия("button1_Click(...)"), кликая в конструкторе два раза по этой кнопке и прописываю там весь необходимый "спорный код", который то исполняется, то не исполняется;
3)смотрю как это все дело работает и если опять возникает ситуация "то выполняется, то не выполняется", я запускаю отладчик с точкой остановки в ранее созданном методе button1_Click и смотрю что и как.
Отладчик вообще замечательная вещь, если уметь им пользоваться. Еще года 3-4 назад я даже такого понятия не знал и если обнаруживал какую-то ошибку в работе программы тупо "пепелил взглядом монитор компьютера", глядя на свой программный код и методом "проб и ошибок" находил проблемное место в коде. Затем хороший преподаватель показал мне возможности отладчика и я с тех пор пользуюсь им регулярно. Что удивительно, некоторые мои знакомые до сей поры работают по такому же принципу("тыкают пальцем в небо" в поисках ошибки) и такое слово, как "Debug" им не знакомо.
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.

Последний раз редактировалось Mixim; 29.07.2011 в 07:09.
Mixim вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связывание программ XxXGhosTXxX Общие вопросы C/C++ 6 17.03.2011 02:43
Как получить картинку при наведении на другую картинку (ссылку) seeker1 JavaScript, Ajax 8 04.07.2010 19:42
Связывание таблиц skev48 Microsoft Office Excel 4 21.03.2010 23:58
Связывание таблиц stscolt БД в Delphi 0 21.03.2010 11:29