Builder C++ TabControl
Ostatnio zmodyfikowano 2011-12-17 18:34
DVD93 Temat założony przez niniejszego użytkownika |
Builder C++ TabControl » 2011-12-15 23:42:02 Witam usiłuję już od dłuższego czasu napisać w Borland Builder c++ Personal program w ,którym mógłbym tworzyć otwierać i edytować wiele dokumentów tekstowych naraz używając do tego celu komponentu TabControl. Lecz niestety program jedynie poprawnie otwiera dokumenty. O to jego kod.
#include <vcl.h> #pragma hdrstop
#include "Unit1.h"
#pragma package(smart_init) #pragma resource "*.dfm"
int dokument = 1;
TForm1 * Form1;
__fastcall TForm1::TForm1( TComponent * Owner ) : TForm( Owner ) { }
void __fastcall TForm1::Button1Click( TObject * Sender ) { String dok = IntToStr( dokument ); SaveDialog1->FileName = "NOWY " + dok; Memo1->Lines->SaveToFile( SaveDialog1->FileName ); TabControl1->Tabs->Add( OpenDialog1->FileName ); dokument++; }
void __fastcall TForm1::Button2Click( TObject * Sender ) { if( OpenDialog1->Execute() ) { TabControl1->Tabs->Add( OpenDialog1->FileName ); Memo1->Lines->LoadFromFile( OpenDialog1->FileName ); } }
void __fastcall TForm1::TabControl1Change( TObject * Sender ) { Memo1->Lines->LoadFromFile( TabControl1->Tabs->Strings[ TabControl1->TabIndex ] ); }
Jeśli ktoś wie co zrobić bym mógł jeszcze jednocześnie tworzyć dokumenty i je wszystkie edytować byłbym bardzo wdzięczny ;) |
|
xevuel |
» 2011-12-17 08:45:42 Nigdy nie programowałem w Builder C++ więc ciężko mi jest połapać się w tym kodzie, ale co jest trudnego w edytowaniu? Otwierasz plik w nowej zakładce, wyświetlasz tekst, edytujesz tekst, zapisujesz tekst do pliku. Po ew. zmianie zakładki po prostu wczytujesz nazwę pliku z aktualnej zakładki i znowu edytujesz... |
|
DVD93 Temat założony przez niniejszego użytkownika |
» 2011-12-17 09:25:55 No i widzisz to nie jest takie proste. Program źle odczytuję miejsce w ,którym dany plik się znajduje przez co wyskakuje mnóstwo błędów no i powinien sam zapisywać zmiany po zmianie zakładki niestety nie wiem też jak to rozwiązać. |
|
xevuel |
» 2011-12-17 09:37:29 ech... Skoro otwierasz plik, to musisz też mieć podaną jego ścieżkę, tak? Więc otwierasz zakładkę 1 i np. w tablicy adresy zapisujesz adresy[ 0 ] = sciezka; . Po naciśnięciu "Zapisz" pobierasz ten adres z aktualnej zakładki i zapisujsz tam tekst... A co do zmiany zakładek, to po każdej zmianie jest wysyłany odpowiedni komunikat - jaki? przeczytaj Zakładki (TabCtrl). |
|
DVD93 Temat założony przez niniejszego użytkownika |
» 2011-12-17 14:24:53 Może ktoś kro programował kiedyś w Builderze ma jakiś pomysł? |
|
akwes |
» 2011-12-17 15:59:46 To nie kwestia Buildera ;P |
|
DVD93 Temat założony przez niniejszego użytkownika |
» 2011-12-17 16:18:40 Tak to kwestia mojego braku pomysłu na rozwiązanie tego problemu :) więc skoro już do tego doszliśmy to może ktoś teraz napisze coś pomocnego ;) ? |
|
akwes |
» 2011-12-17 16:25:44 A powiedz Ty mi, czy chcesz mieć te TabControl w jednym Memo (lub RichEdit) czy wolisz w kilku ?
/* edit źle sie wyraziłem czy na tab crontrol chcesz miec jedno memo czy wiele. A nie że tabcontrol w memo xD */
Każde ma swoje wady i zalety, które sądzę sam potrafisz obmyślić :P Nie chodzi mi teraz o samą implementacje pomysłu bo to szczegół. Wolisz kilka zakładek faktycznie, czy używanie jednej ? |
|
« 1 » 2 |