HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 18.12.2008, 20:45
Delimiter
Banned
Регистрация: 08.04.2005
Сообщений: 446
С нами: 11099536

Репутация: 518
По умолчанию

2 Vip

char a[200];

itoa(number,a,10); // в деястичной itoa(number,a,16) шестнадцатиричной и по аналогии

Последний раз редактировалось Delimiter; 18.12.2008 в 20:50..
 
Ответить с цитированием

Windows Mobile C++(MFC) Удивительная вещь.
  #2  
Старый 19.12.2008, 00:41
n4e/\@
Участник форума
Регистрация: 06.05.2008
Сообщений: 161
С нами: 9480791

Репутация: 59
По умолчанию Windows Mobile C++(MFC) Удивительная вещь.

Пишу простую программу, отправить запрос на сервер, принять ответ с сервера.
Для сокетов использую Эту библиотеку.
Все это делаю в блоке инилизации программы.
Создаю сокет, отсылаю запрос, все нормально.
дальше следующий код
Код:
        char buf[1024];
	char otvet[9999];
	mysocket.set_buffer_size(sizeof(buf));
	while (strstr(buf,"</html>")==0)
	{
	mysocket >> buf;
	strcat(otvet,buf);
	}
	mysocket.close();
компилируется, все хорошо, данные получаю правильные.
Но как только доходит до конца. (return TRUE прога вылетает с ошибкой обратся в микрософт
пишу:
Код:
	mysocket.close();
	delete []otvet; //ЧЕ ТУТ МОЖНО УДАЛИТЬ Я НЕ ЗНАЮ
и о чудо прога компилируется и работает, не каких ошибок
причем ей пофигу будули я удалять ответ или delete []buf;
она будет нормально работать.
Вот как можно объяснить такую сетуацию?
Проверял на WM6 в эмуляторе и на WM6.1 на своей коммуникаторе.
De-visible Про тему знаю, не думал что вопрос про ВМ можно отнести к разряду для новичков.
РЕШЕНИЕ: Увеличил buf и все стало нормально. Почему все работал когда писал delete [] загадка.

Последний раз редактировалось n4e/\@; 19.12.2008 в 03:53..
 
Ответить с цитированием

  #3  
Старый 19.12.2008, 00:50
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
С нами: 9655526

Репутация: 1821


По умолчанию

Для таких вопросов есть эта тема, не стоит создавать отдельную
 
Ответить с цитированием

  #4  
Старый 19.12.2008, 22:13
Vorlan
Познающий
Регистрация: 09.06.2007
Сообщений: 68
С нами: 9958796

Репутация: 18
По умолчанию

Установил visual C++ откомпилировал, прога пашет. Закидываю на другой комп выходит сообщение, то что не находит компоненты. Советовали отключить манифест, отключил, но все-равно не пашет
 
Ответить с цитированием

  #5  
Старый 19.12.2008, 22:32
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
С нами: 9999746

Репутация: 1318


По умолчанию

И что она не находит? На чём компилировал?
 
Ответить с цитированием

  #6  
Старый 19.12.2008, 22:36
Vorlan
Познающий
Регистрация: 09.06.2007
Сообщений: 68
С нами: 9958796

Репутация: 18
По умолчанию

Все Visual c++ 2008 компилировал. На другом компе запускаю пишет, не найдены компонеты и все.

Последний раз редактировалось Vorlan; 19.12.2008 в 22:39..
 
Ответить с цитированием

  #7  
Старый 20.12.2008, 00:12
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
 
Ответить с цитированием

не работают полосы прокрутки.
  #8  
Старый 20.12.2008, 19:49
NetSter
студент
Регистрация: 30.07.2007
Сообщений: 800
С нами: 9885926

Репутация: 1188


Question не работают полосы прокрутки.

доброго времени суток.
очень нужно реализовать функцию открытия txt файлов и вывода содержимого файлов на экран в отдельном окне.
вот что набросал уже:

класс окна для вывода в него содержимого файла:
Код:
class COpenWnd:public CFrameWnd
{
public:
	COpenWnd(CWnd *wnd);
};
COpenWnd::COpenWnd(CWnd *wndPerent)
{
CRect rectWnd(25,25,700,500);
Create(NULL, "Opened file", WS_OVERLAPPEDWINDOW | WS_HSCROLL |WS_VSCROLL , rectWnd, wndPerent, NULL);
}
и функция, которая открывает файл и выводит его содержимое в окно:
Код:
void CMyFrameWin::OnOpen()
  {
	CString m_Text, path;
	CFileDialog dlgOpen(TRUE, "txt","", 
	OFN_HIDEREADONLY, "BLOKNOT (*.txt)| *.txt| VISUAL C++ (*.cpp)| *.cpp| ALL Files(*.*)|*.*|", this);

	if(dlgOpen.DoModal()==IDOK)
	{
		CStdioFile File(dlgOpen.GetPathName(), CFile::modeRead| CFile::typeBinary);
		CString & ref=m_Text;
		path=dlgOpen.GetPathName();
		COpenWnd *OpenWnd=new COpenWnd(this);
		OpenWnd -> ShowWindow(SW_SHOWNORMAL);
		OpenWnd -> UpdateWindow();
		CClientDC dc(OpenWnd);
		int y=30;
CFont l_font; 
l_font.CreatePointFont(150,"Lucida Console"); 
CFont* l_old_font = dc.SelectObject(&l_font);
		dc.TextOut(10,10,path);
dc.SelectObject(l_old_font);

		while (File.ReadString(ref)!=NULL)
		{
CFont l_font; 
l_font.CreatePointFont(150,"Lucida Console"); 
CFont* l_old_font = dc.SelectObject(&l_font);
    
		dc.SetTextColor(RGB(y*10,y+19,y+50));
		dc.TextOut(30,y,m_Text, strlen(m_Text)-1);
		y=y+45;
		dc.SelectObject(l_old_font); 
		}
	}
  }

проблема: никак не получается сделать рабочие полосы прокрутки, чтоб когда в файле большой текст, то можно было с помощью полос прокручивать и видеть все содержимое файла.
помогите пожалуйста новичку.
большое спасибо!
 
Ответить с цитированием

  #9  
Старый 20.12.2008, 23:07
_empty
Познающий
Регистрация: 22.03.2008
Сообщений: 63
С нами: 9546362

Репутация: 65
По умолчанию

А зачем ты текст через dc отрисовываешь? Ты же используешь стандартные компоненты, поэтому используй Editbox или его производные, какой средой пользуешься?
 
Ответить с цитированием

  #10  
Старый 20.12.2008, 23:58
NetSter
студент
Регистрация: 30.07.2007
Сообщений: 800
С нами: 9885926

Репутация: 1188


Question

Цитата:
Сообщение от _empty  
А зачем ты текст через dc отрисовываешь? Ты же используешь стандартные компоненты, поэтому используй Editbox или его производные, какой средой пользуешься?
спасибо за совет. в общем принял во внимание и вот к чему дошел:
http://www.gfs-team.ru/?act=articles&pact=122
только вот у меня это отдельное диалоговое окно в приложении, которое открывается по нажатии ОПЕН.
1) создал класс class COpenDialog : public CDialog
Код:
class COpenDialog : public CDialog
{
public:
	afx_msg BOOL OnSetCursor( CWnd* pWnd, UINT nHitTest, UINT message );
	COpenDialog(CWnd* pParent = NULL);  
		enum { IDD = IDD_DIALOG_OPEN};
	CEdit    m_EditOpen;
	CEdit    m_bOpen;
protected:
	virtual void DoDataExchange(CDataExchange* pDX);    
protected:
	virtual void OnOK();
	virtual void OnCancel();
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	DECLARE_MESSAGE_MAP()
public:
	afx_msg void OnStnClickedBitmap1();
 };
COpenDialog::COpenDialog(CWnd* pParent)
	: CDialog(COpenDialog::IDD, pParent)
{
}
void COpenDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_OPEN_PATH, m_EditOpen);
	DDX_Control(pDX, IDC_OPEN_TEXT, m_bOpen);
}

BEGIN_MESSAGE_MAP(COpenDialog, CDialog)
	ON_WM_PAINT()
	ON_WM_SETCURSOR()
	ON_STN_CLICKED(IDB_BITMAP1, &COpenDialog::OnStnClickedBitmap1)
END_MESSAGE_MAP()

///////////////////////////////////////////////////////////////////////////
BOOL COpenDialog:: OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
----bla bla bla
}
/////////////////////////////////////////////////////////////////////////////
void COpenDialog::OnPaint() 
{
----bla bla bla
}
void COpenDialog::OnOK() 

{
	CString m_EditText;
        // TODO: Add your control notification handler code here
        CString fname; //Переменная для хранения имени файла
        CFile file;    //обьект класса CFile
        char ch[1024]; //Буффер для чтения данных из файла
        if(!OpenRead) //Если OpenRead=false то показываем диалог открытия файлов
        {
                CFileDialog fDialog(TRUE);
                fDialog.DoModal();
                m_EditOpen.SetWindowText(fDialog.GetPathName());
                m_bOpen.SetWindowText("Read");
                OpenRead = true;
        }
        else 
        {
                m_EditOpen.GetWindowText(fname); //Получаем имя файла
                if(!file.Open(fname, CFile::modeRead, NULL)) //Открываем его
                {
                        AfxMessageBox("Cannot open file");
                        return;
                }
                file.Read(&ch, 1024); //Читаем 1024 байт
                //m_EditText.SetWindowText(ch);
                file.Close(); //Закрываем файл
                m_bOpen.SetWindowText("Open");//Меняем текст кнопки
                OpenRead = false;
        }


	CDialog::OnOK();
}
void COpenDialog::OnCancel() 
{
	CDialog::OnCancel();
}

BOOL COpenDialog::OnInitDialog() 
{
	CDialog::OnInitDialog();
	m_EditOpen.SetWindowText(CString("файл"));
	m_bOpen.SetWindowText(CString("содержимое"));
	UpdateData(false);
	OpenRead = false;
	return TRUE;
}
и подправил функцию ОПЕН с мейнфрейма, чтоб она вызывала диалог:
Код:
void CMyFrameWin::OnOpen()
  {

    COpenDialog dialog;		
	if(dialog.DoModal()==IDOK);
 }
при компиле имеем ошибку в строчке
m_EditText.SetWindowText(ch);
которую устранил пока лиш тем что закомментировал...
суть ошибки :
Код:
 'SetWindowTextA' : is not a member of 'ATL::CStringT<BaseType,StringTraits>'
в чем собственно трабла у как устранить данную проблему?
среда разработки - Visual Studio 2008
Спасибо всем кто откликнется.

--------------------EDIT---------------------

Спасибо за консультацию по аське groupby
проблема была в:
"m_EditText иметт тип CString
а должен иметь тип CEdit"
--------------------EDIT---------------------

Последний раз редактировалось NetSter; 21.12.2008 в 14:18.. Причина: проблема решена. спс 2 groupby
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...